Method, information terminal, and non-transitory computer-readable recording medium that customize menu information based on religion information

ABSTRACT

A method acquires, on a basis of a restaurant ID, menu information indicating one or more foods provided by a restaurant over a network from a second server associated with the restaurant corresponding to the restaurant ID, extracts one or more first foods compatible with religion information on a basis of the menu information and the religion information, displays the one or more first foods through a second operation screen, corresponding to the second server, for accepting an order of a food to be provided by the restaurant and displayed on a display of the information terminal of a user, and transmits food order information indicating a food selected from among the one or more first foods and a seat ID to the second server.

BACKGROUND 1. Technical Field

The present disclosure relates to a method of controlling an informationterminal and the like.

2. Description of the Related Art

Japanese Unexamined Patent Application Publication No. 2005-222191discloses a technology that offers a menu compatible with personal dataon the basis of personal data including user preference information,dangerous ingredient information expressing ingredients the user isprohibited from consuming, and health management information formanaging intake.

Japanese Unexamined Patent Application Publication No. 2008-299821discloses a restaurant order reception device, installed in arestaurant, for assisting service work by accepting the input of orderinformation from a menu and the like. The restaurant order receptiondevice in Japanese Unexamined Patent Application Publication No.2008-299821 is provided with a means for causing a display device todisplay an order input screen on which menu order information isimputable. On the order input screen, menu order information is inputtedfor each individual seat set at a table.

SUMMARY

One non-limiting and exemplary embodiment provides further improvementover the related art.

In one general aspect, the techniques disclosed here feature a method ofcontrolling an information terminal of a user that communicates over anetwork with a first server that manages religion information of theuser corresponding to identification information that identifies theuser, the method comprising: acquiring a restaurant ID corresponding toa restaurant and a seat ID indicating a seat of the user through a firstoperation screen displayed on a display of the information terminal ofthe user, wherein the first operation screen conforms to a common styledesigned by a matching app of the first server; acquiring, on a basis ofthe restaurant ID, menu information indicating one or more foodsprovided by the restaurant over a network from a second serverassociated with the restaurant corresponding to the restaurant ID;extracting one or more first foods corresponding to the religioninformation at the information terminal on a basis of the menuinformation and the religion information; displaying the one or morefirst foods through a second operation screen for accepting an order ofa food to be provided by the restaurant, wherein the second operationscreen is customized according to a style designated by the restaurant;and transmitting from the information terminal to the second server i)food order information indicating the food selected from among the oneor more first foods using the second operation screen and ii) the seatID.

According to the above aspect, further improvements may be achieved.

It should be noted that general or specific embodiments may beimplemented as a system, a method, an integrated circuit, a computerprogram, a storage medium, or any selective combination thereof.

Additional benefits and advantages of the disclosed embodiments willbecome apparent from the specification and drawings. The benefits and/oradvantages may be individually obtained by the various embodiments andfeatures of the specification and drawings, which need not all beprovided in order to obtain one or more of such benefits and/oradvantages.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a diagram illustrating a configuration of a typical foodordering system;

FIG. 2 is a diagram illustrating an example of an overall picture of theinformation infrastructure of an information processing system accordingto the present disclosure;

FIG. 3 is a diagram illustrating an overall picture of the informationprocessing system according to the present embodiment in further detail;

FIG. 4 is a diagram illustrating an example of a specific configurationof the information processing system according to the presentembodiment;

FIG. 5 is a diagram illustrating the layout of a certain restaurantlocation (that is, a store).

FIG. 6A is a diagram illustrating an example of the installation of a QRcode (registered trademark; the same applies hereinafter) with respectto a seat;

FIG. 6B is a diagram illustrating an example of the installation of a QRcode with respect to a seat;

FIG. 6C is a diagram illustrating an example of the installation of QRcodes with respect to seats;

FIG. 6D is a diagram illustrating an example of the installation of QRcodes with respect to seats;

FIG. 7 is a diagram illustrating an example of an operation screendisplayed on an information terminal in a case where a user causes theinformation terminal to read a QR code;

FIG. 8 is a diagram illustrating an example of an operation screendisplayed on the information terminal immediately after a QR code readerreads a QR code;

FIG. 9 is a diagram illustrating an example of an operation screenincluding a standard menu of Restaurant A;

FIG. 10 is a diagram illustrating an example of a scenario in which auser operates the operation screen to order a food from the standardmenu;

FIG. 11 is a diagram illustrating an example of an operation screendisplayed when making a final confirmation of the food to order from thestandard menu;

FIG. 12 is a diagram illustrating an example of an authentication screendisplayed on the information terminal immediately after the userordering a food launches a matching app;

FIG. 13 is a diagram illustrating another example of the authenticationscreen;

FIG. 14 is a diagram illustrating an example of a home screen displayedimmediately after user authentication by the matching app ends;

FIG. 15 is a diagram illustrating an example of an operation screendisplayed on the information terminal in a case where the user wholaunched the matching app causes the information terminal to read a QRcode corresponding to the user's seat;

FIG. 16 is a diagram illustrating an example of an operation screendisplayed on the information terminal in the case of acquiring arestaurant ID and a seat ID through NFC;

FIG. 17 is a diagram illustrating an example of a display screendisplayed on the information terminal when the matching app isgenerating a personalized menu;

FIG. 18 is a diagram illustrating an example of an operation screenincluding a personalized menu;

FIG. 19 is a diagram illustrating a scenario in which the user operatesthe operation screen to order a food from the personalized menu;

FIG. 20 is a diagram illustrating an example of an operation screendisplayed when making a final confirmation of the food to order from thepersonalized menu;

FIG. 21 is a diagram illustrating an example of an order history screendisplayed when the user checks the order history so far;

FIG. 22 is a table summarizing various religions and ingredients thatusers should avoid according to each religion;

FIG. 23 is a diagram illustrating an example of a data structure ofinformation including user religion information returned from a firstserver to the matching app;

FIG. 24 is a diagram illustrating an example of a data structure ofingredient information forming menu information returned from a secondserver;

FIG. 25 is a diagram illustrating an example of ingredient informationfor ramen and vegetable gyoza;

FIG. 26 is a sequence diagram illustrating an example of an overallpicture of a process by the information processing system according tothe present embodiment;

FIG. 27 is a flowchart illustrating an example of a process by theinformation terminal in a case where a food is ordered from the standardmenu;

FIG. 28 is a flowchart illustrating an example of a process by theinformation terminal in a case where a food is ordered from thepersonalized menu;

FIG. 29 is a flowchart illustrating details of the process in step S1 ofFIG. 28 ;

FIG. 30 is a flowchart illustrating details of the process in step S2 ofFIG. 28 ;

FIG. 31 is a flowchart illustrating details of the process in step S3 ofFIG. 28 ;

FIG. 32 is a flowchart illustrating details of the process in step S4 ofFIG. 28 ;

FIG. 33 is a diagram illustrating an example of a specificimplementation of the information processing system according to thepresent embodiment;

FIG. 34 is a flowchart illustrating an example of a process by thematching app with respect to files from the launching of the matchingapp until the personalized menu is displayed;

FIG. 35 is a diagram illustrating an example of an operation screenincluding a first variation of the personalized menu;

FIG. 36 is a diagram illustrating an example of an operation screenincluding a second variation of the personalized menu;

FIG. 37 is a diagram illustrating an example of an operation screenincluding grayed-out tile objects;

FIG. 38 is a diagram illustrating an example of an operation screenincluding a third variation of the personalized menu;

FIG. 39 is a diagram illustrating an example of a map screen displayedon the information terminal; and

FIG. 40 is a sequence diagram illustrating an example of an overallpicture of a process by the information processing system in a case ofadopting a configuration in which the user is made to select arestaurant from the map screen.

DETAILED DESCRIPTION

(Background Leading Up to the Present Disclosure)

In Japan, the effects of the tourism boom in recent years has led to anincrease in visits by foreigners adhering to a variety of religions.Each religion has its own doctrine, and depending on the doctrine,ingredients that should be avoided are prescribed. In light of suchcircumstances, if a restaurant could offer a menu that mainly includesconsumable foods with consideration for the customer's religion,customer satisfaction would be improved and the restaurant would be ableto differentiate itself from other restaurants.

However, there are a variety of religions around the world, such asIslam, Christianity, Buddhism, Hinduism, and Judaism, and theingredients that should be avoided are different for each religion.Furthermore, in some cases, the ingredients that should be avoided aredifferent depending on the sect within the same religion. Consequently,it is not easy to offer an appropriate menu according to the religionand sect embraced by a customer.

In addition, if the food ordered by a certain customer is mistakenlyserved to the seat of another customer of a different religion sittingat the same table, and moreover if the food contains an ingredient thatshould be avoided by the other customer for religious reasons, the othercustomer will be discomforted. Furthermore, if the other customer eatsthe food without realizing what the food contains, there is a risk thatthe other customer's health may be impaired as a result of eating aningredient that he or she is unaccustomed to eating. Consequently, it isnecessary to avoid such serving mistakes.

Japanese Unexamined Patent Application Publication No. 2005-222191described above discloses that a user is made to input a user ID and apassword into a menu terminal provided at each table in a certain store,a store server acquires personal data about the user and store dataabout the store from a data center, the store server determines a menufrom which problematic ingredients (dangerous ingredients and dislikedingredients) have been removed and a recommended menu (such as a menucontaining many foods that the user likes) on the basis of the personaldata and the store data, and the menu terminal displays the determinedmenu.

However, in Japanese Unexamined Patent Application Publication No.2005-222191, as is apparent from how a unique table number if set foreach table in the menu terminal, food orders are only considered inunits of tables, and there is no consideration for food orders at theseat level. For this reason, with Japanese Unexamined Patent ApplicationPublication No. 2005-222191, there is a possibility that a servingmistake will occur in which the food ordered by a certain customer ismistakenly served to another customer of a different religion sitting atthe same table.

On the other hand, personal data such as preference information issensitive information, and therefore it is inappropriate to provide suchinformation to third parties without the user's consent.

However, in Japanese Unexamined Patent Application Publication No.2005-222191, because personal data about the user is transmitted fromthe data center to the store server, there is also a problem of thepersonal data being provided to the store side without the user'sconsent.

Japanese Unexamined Patent Application Publication No. 2008-299821discloses an order input screen on which it is possible to input andregister, with an input device, food order information for eachindividual seat set at individual tables. The order input screenincludes a seat position image including seat objects indicating aplurality of seats and a plurality of food-specifying imagescorresponding to each food item. For example, an employee touches theseat object of a desired seat from the seat position image, and thentouches a food-specifying image corresponding to a desired food item.With this arrangement, the food item individually ordered by thecustomer sitting in the touched seat is selected.

In this way, in Japanese Unexamined Patent Application Publication No.2008-299821, a seat and a food item are associated by manual input by anemployee through the order input screen. For this reason, there is apossibility of incorrect input occurring when associating a seat with afood item. In particular, such incorrect input occurs easily at timeswhen the store is crowded. Furthermore, the order input screen inJapanese Unexamined Patent Application Publication No. 2008-299821includes various information and objects besides the seat position imageand the food-specifying images, as illustrated in FIG. 38 of JapaneseUnexamined Patent Application Publication No. 2008-299821. The abovealso demonstrates that there is a high probability that such incorrectinput may occur on the order input screen of Japanese Unexamined PatentApplication Publication No. 2008-299821. For this reason, like JapaneseUnexamined Patent Application Publication No. 2005-222191, JapaneseUnexamined Patent Application Publication No. 2008-299821 is also unableto prevent the serving mistakes described above.

The present disclosure has been devised to address the issues describedabove, and a first objective thereof is to prevent food ordered by acertain customer from being served to another customer of a differentreligion.

Furthermore, a second objective of the present disclosure is to preventsensitive information stored in a first server from being leaked outsidethe first server without the user's consent.

A control method according to an aspect of the present disclosure is amethod of controlling an information terminal of a user thatcommunicates over a network with a first server that manages religioninformation of the user corresponding to identification information thatidentifies the user, the method comprising: acquiring a restaurant IDcorresponding to a restaurant and a seat ID indicating a seat of theuser through a first operation screen conforming to a common styledesignated by a matching app displayed on a display of the informationterminal of the user, wherein the first operation screen conforms to acommon style designed by a matching app of first server; acquiring, on abasis of the restaurant ID, menu information indicating one or morefoods provided by the restaurant over a network from a second serverassociated with the restaurant corresponding to the restaurant ID;extracting one or more first foods corresponding to the religioninformation at the information terminal on a basis of the menuinformation and the religion information; displaying the one or morefirst foods through a second operation screen for accepting an order ofa food to be provided by the restaurant, wherein the second operationscreen is customized according to a style designated by the restaurant;and transmitting ID from the information terminal to the second serveri) food order information indicating the food selected from among theone or more first foods using the second operation screen and ii) theseat.

According to the above aspect, when ordering a food, a first operationscreen is displayed on a display of a user's information terminal, and arestaurant ID indicating a restaurant compatible with a religionindicated by religion information corresponding to identificationinformation and a seat ID indicating the user's seat are acquiredthrough the first operation screen. On the basis of the acquiredrestaurant ID, menu information indicating one or more foods provided bythe restaurant corresponding to the restaurant ID is acquired from asecond server.

One or more first foods corresponding to the religion information areextracted on the basis of the acquired menu information and the religioninformation of the user. The one or more extracted first foods aredisplayed on the display of an information terminal through a secondoperation screen for receiving an order of food from the restaurant. Afood is selected from among the one or more first foods displayed on thesecond operation screen, and food order information indicating the foodis associated with the seat ID and transmitted to the second server.

In this way, in this aspect, the food order information indicating thefood selected by the user from a personalized menu and the user's seatare associated automatically without manual intervention as part of theprocess by which the user orders the food. This arrangement makes itpossible to prevent a serving mistake in which the food ordered by acertain user contains an ingredient that should be avoided for religiousreasons by another user sitting at the same table, but the food ismistakenly served to other user, for example. As a result, it ispossible to prevent discomfort to the other user. Furthermore, becausesuch serving mistakes are prevented, it is possible to prevent animpairment to the health of the other user caused by the other usermistakenly eating the served food.

Furthermore, in this aspect, because the religion information is nottransmitted to the second server, the religion information is preventedfrom being leaked to the restaurant side. Furthermore, in this aspect,because the food order information is transmitted in association withthe seat ID rather than the identification information that specifiesthe user, the identification information is prevented from being leakedto the restaurant side.

Furthermore, in this aspect, because the first operation screencorresponds to the first server, the design of the first operationscreen can be made to reflect the intentions of the manager of the firstserver. Meanwhile, because the second operation screen corresponds tothe second server, the design of the second operation screen can be madeto reflect the intentions of the manager of the second server.

In the above method, the one or more first foods may also be foodsexcluding a second food that is not compatible with the religioninformation.

According to this aspect, because the second operation screen excludingfoods that are incompatible with the religion information is generated,the user is able to order a food smoothly.

In the above method, the one or more first foods may include a food withan added ingredient containing a nutrient that tends to be deficient incorrespondence with the religion indicated by the religion information.

According to this aspect, because the one or more first foods include afood with an added ingredient containing a nutrient that tends to bedeficient in correspondence with the religion indicated by the religioninformation, it is possible to suggest to the user a food capable ofsupplying a nutrient that tends to be deficient but is difficult tospecify because specialized knowledge is demanded.

In the above method, the second operation screen may also include adisplay indicating a side menu for supplying a nutrient that tends to bedeficient in correspondence with the religion indicated by the religioninformation.

According to this aspect, because a side menu for supplying a nutrientthat tends to be deficient in correspondence with the religion indicatedby the religion information is displayed on the second operation screen,it is possible to suggest to the user a combination of foods capable ofsupplying a nutrient that tends to be deficient but is difficult tospecify because specialized knowledge is demanded.

In the above method, the one or more first foods may include a food withan added ingredient containing a nutrient in which the user has beendeficient in past meals consumed by the user over a predeterminedperiod.

According to this aspect, because the one or more first foods include afood with an added ingredient containing a nutrient in which the userhas been deficient in past meals consumed by the user over apredetermined period, it is possible to suggest to the user a foodcapable of supplying a nutrient that has been deficient in thepredetermined period but is difficult to specify because specializedknowledge is demanded.

In the above method, the second operation screen may also include adisplay indicating a side menu for supplying a nutrient in which theuser has been deficient in past meals consumed by the user over apredetermined period.

According to this aspect, because the second operation screen includes adisplay indicating a side menu for supplying a nutrient in which theuser has been deficient in past meals consumed by the user over apredetermined period, it is possible to suggest to the user acombination of foods capable of supplying a nutrient that has beendeficient but is difficult to specify because specialized knowledge isdemanded.

In the above method, the religion information of the user may includethe religion of the user as well as level information indicating thedegree to which to avoid an ingredient that should be avoided accordingto the religion.

According to this aspect, the religion information includes the religionof the user as well as level information indicating the degree to whichto avoid an ingredient that should be avoided according to the religionindicated by the religion information. Consequently, the priority ofeach food included in the menu information can be determined finely anda personalized menu can be generated with consideration for the religionembraced by the user as well as the degree to which an ingredient shouldbe avoided.

In the above method, foods containing an ingredient that the user shouldavoid as much as possible may also be included.

According to this aspect, because the personalized menu includes foodscontaining an ingredient that the user should avoid as much as possible,a personalized menu can be generated to meet the needs of users who donot strictly adhere to the doctrine of the religion.

In the above method, the identification information may also include auser ID.

According to this aspect, because the identification informationincludes a user ID, the religion information corresponding to the usercan be acquired with certainty from the first server.

In the above method, the first server may also be distinct from thesecond server.

Sensitive information about the user, such as the religion informationof the user, is stored in the first server. It is not preferable forsuch sensitive information to be provided outside the first serverwithout the user's consent. In this aspect, the first server isconfigured as a distinct server from the second server. Consequently,sensitive information about the user is prevented from being leakedoutside the first server.

In the above method, the restaurant ID and the seat ID may also beacquired through the first operation screen by reading an identificationcode prepared at a corresponding position at the table where the usersits.

According to this aspect, the restaurant ID and the seat ID are acquiredby reading an identification code prepared at a corresponding positionat the table where the user sits. With this arrangement, the restaurantID and the seat ID can be acquired without being input manually by theuser.

In the above method, the identification code may include a QR code.

According to this aspect, because the identification code is a QR code,the information can be acquired without being input manually by theuser.

In the above method, the identification code may also be read using NearField Communication (NFC).

According to this aspect, because the identification code is read usingNFC, the information can be acquired without being input manually by theuser.

In the above control method, the first server may also distributivelymanage the religion information, biometric information, preferenceinformation including product purchase history information or food orderhistory information about the user, and activity history informationincluding position information about the user.

According to this aspect, because the religion information, thebiometric information, the purchase history information or preferenceinformation, and the activity history information is distributivelymanaged, the first server is capable of acquiring personal informationabout the user as needed. As a result, this aspect makes it possible topreserve the freshness of the personal information stored in the firstserver, and thereby prevent a personalized menu from being created onthe basis of outdated religion information.

A method according to another aspect of the present disclosure is amethod of controlling an information terminal of a user thatcommunicates over a network with a first server that manages religioninformation of the user corresponding to identification information thatidentifies the user, the method comprising: transmitting theidentification information stored in the information terminal to thefirst server; acquiring, from the first server on a basis of positioninformation and the identification information of the informationterminal through a 1st first operation screen displayed on a display ofthe information terminal of the user, restaurant information expressingone or more restaurants which exist in an area including a pointindicated by the position information and which are compatible with areligion indicated by religion information corresponding to theidentification information, wherein the 1st first operation screenconforms to a common style designed by a matching app of the firstserver; acquiring a restaurant ID corresponding to one a restaurant fromamong the one or more restaurants and a seat ID indicating a seat of theuser through a 2nd first operation screen displayed on the display ofthe information terminal of the user, wherein the 2nd first operationscreen conforms to the common style designed by the matching app of thefirst server; acquiring, on a basis of the restaurant ID, menuinformation indicating one or more foods provided by the one restaurantover a network from a second server associated with the one restaurantcorresponding to the restaurant ID; extracting one or more first foodscorresponding to the religion information at the information terminal ona basis of the menu information and the religion information; displayingthe one or more first foods through a second operation screen foraccepting an order of a food to be provided by the restaurant, whereinthe second operation screen is customized according to a styledesignated by the restaurant; and transmitting from the informationterminal to the second server i) food order information indicating thefood selected from among the one or more first foods using the secondoperation screen and ii) the seat ID.

According to this aspect, when ordering rood, a 1st first operationscreen is displayed on the display of the user's information terminal.Through the 1st first operation screen, one or a plurality of restaurantinformation about restaurants which exist in an area including a pointindicated by the position information about the information terminal andwhich are compatible with the religion indicated by the religioninformation corresponding to the identification information is acquiredfrom the first server.

A 2nd first operation screen is displayed on the display of theinformation terminal. Through the 2nd first operation screen, arestaurant ID and a seat ID of one restaurant among the one or pluralityof restaurant information are acquired. From the acquired restaurant ID,menu information indicating one or more foods provided by the restaurantcorresponding to the restaurant ID is acquired from the second server.

A personalized menu for the user corresponding to the religioninformation is generated on the basis of the acquired menu informationand the religion information of the user. The personalized menu isdisplayed on the display of the information terminal through the secondoperation screen. A food is selected from the displayed personalizedmenu, and food order information indicating the food is associated withthe seat ID and transmitted to the second server.

In this way, in this aspect, the food order information indicating thefood selected by the user from a personalized menu and the user's seatare associated automatically without manual intervention as part of theprocess by which the user orders the food. This arrangement makes itpossible to prevent a serving mistake in which the food ordered by acertain user contains an ingredient that should be avoided for religiousreasons by another user sitting at the same table, but the food ismistakenly served to other user, for example. As a result, it ispossible to prevent discomfort to the other user. Furthermore, becausesuch serving mistakes are prevented, it is possible to prevent animpairment to the health of the other user caused by the other usermistakenly eating the served food.

Furthermore, in this aspect, because the religion information is nottransmitted to the second server, the religion information is preventedfrom being leaked to the restaurant side. Furthermore, in this aspect,because the food order information is transmitted in association withthe seat ID rather than the identification information that specifiesthe user, the identification information is prevented from being leakedto the restaurant side.

Furthermore, in this aspect, because restaurant information about one ormore restaurants near the user and compatible with the user's religionis acquired through the 1st first operation screen, the user is able toselect a restaurant compatible with his or her own religion smoothly.

Furthermore, in this aspect, because the 1st first operation screen andthe 2nd first operation screen correspond to the first server, thedesign of both operation screens can be made to reflect the intentionsof the manager of the first server. Meanwhile, because the secondoperation screen corresponds to the second server, the design of thesecond operation screen can be made to reflect the intentions of themanager of the second server.

In the above method, the position information about the user'sinformation terminal may also be acquired in the first server by using aGPS system.

According to this aspect, the position information about the user'sinformation terminal can be acquired accurately.

The above method may also be executed in the information terminal. Theabove method may also be a program executed by a computer in theinformation terminal, or a recording medium storing the program.

According to these configurations, an information terminal and a programthat execute the method described above can be provided.

In the above program, the identification information that specifies theuser may also include a serial code for each information terminalassigned to the program.

According to this configuration, because a serial code for eachinformation terminal assigned to the program is adopted, theidentification information can be configured as information with ahigher degree of anonymity.

Embodiment

The Internet is expected to become even more widespread in society inthe future, with various types of sensors becoming commonplace.Accordingly, in society, information related to the states andactivities of individuals as well as information about a city as awhole, including features such as buildings and traffic, is anticipatedto become digitized and usable by computer systems. Digitized datarelated to individuals (personal information) is accumulated in thecloud through communication networks, managed in information banks asbig data, and used for various purposes for individuals.

Such a highly information-oriented society is referred to as Society 5.0in Japan. A highly information-oriented society is one in which economicadvancement and the resolution of social issues are anticipated throughan information infrastructure (cyber-physical system) that highlyintegrates real space (physical space) and virtual space (cyberspace).

In such a highly information-oriented society, when an individual makesdecisions in various daily scenarios, big data including accumulatedpersonal information is analyzed to enable the individual to know whichchoices are considered optimal for the individual according to thesituation at the time.

Hereinafter, individual eating habits will be treated as a theme todescribe a configuration that achieves improved economic efficiency andindividual optimization (personalization) in a highlyinformation-oriented society in which such a cyber-physical systemoperates.

As an example of a personalized food ordering system, it is conceivableto transmit menu information from a store terminal of a restaurant to aninformation terminal of an individual, and present a menu of foods thatdo not contain ingredients that should be avoided by the user forreligious reasons on a mobile terminal as a recommended menu. First, atypical food ordering system expected to be constructed in a societybefore the highly information-oriented society described is proposedwill be described.

FIG. 1 is a diagram illustrating a configuration of a typical foodordering system. The ordering system includes a store terminal 1100 anda mobile terminal 1200. The store terminal 1100 and the mobile terminal1200 are installed inside a restaurant location (hereinafter referred toas a “store”) 1000. The store terminal 1100 is a computer that transmitsmenu information. The store terminal 1100 includes a communication unitfor communicating with external equipment, an arithmetic unit forperforming arithmetic processing, a memory for storing data, and a UIunit for displaying and manipulating information. The memory stores menuinformation 1101. The menu information 1101 includes information relatedto foods that the restaurant provides. Specifically, the menuinformation 1101 includes the names of foods, the ingredients used inthe foods, and the prices of the foods. In the example of FIG. 1 , themenu information 1101 includes the four foods of beef Hamburg steak,seafood pasta, beef curry, and spinach gratin.

The mobile terminal 1200 is a mobile terminal such as a smartphonecarried by a user visiting the store 1000. The mobile terminal 1200includes a communication unit for communicating with external equipment,an arithmetic unit for performing arithmetic processing, a memory forstoring data, and a UI unit for displaying and manipulating information.The memory stores information such as religion information and mealhistory information about the user corresponding to identificationinformation of the user who carries the mobile terminal 1200. Thereligion information includes information related to ingredients thatshould be avoided by the user according to the religion embraced by theuser.

When the user enters the store 1000, the store terminal 1100 and themobile terminal 1200 initiate communication automatically or manually.The mobile terminal 1200 that has initiated communication acquires themenu information 1101 from the store terminal 1100. The mobile terminal1200 acquiring the menu information 1101 cross-references the menuinformation with the religion information stored in the memory, andextracts foods that do not contain ingredients that should be avoided.The mobile terminal 1200 generates a recommended menu 1211 on the basisof the extracted foods, and displays the recommended menu 1211 on the UIunit. In the example of FIG. 1 , beef is an ingredient that should beavoided by the user, and therefore the food that does not contain beef,namely spinach gratin, is displayed as the recommended menu 1211.

According to the above configuration, the user is able to select, fromthe displayed recommended menu, a food that does not contain aningredient that should be avoided.

In Society 5.0, personal information such as religion information isanonymized such that an individual is not identified by a third partyand managed exclusively by a server of a business referred to as aninformation bank that manages personal information. The personalinformation is continually updated under the management of theinformation bank, without depending on manual input from the user.

However, in the ordering system illustrated in FIG. 1 , the religioninformation is managed by the mobile terminal 1200 and is not managed bya server. Consequently, in the ordering system illustrated in FIG. 1 ,updating the religion information is not easy. For example, updating thereligion information involves requesting the user to manually inputreligion information into the mobile terminal 1200, which is burdensomefor the user. Furthermore, because the religion information is notanonymized, there is also a possibility that the religion informationmay be leaked to the store terminal 1100. Consequently, furtherimprovements are needed to make the ordering system illustrated in FIG.1 compatible with the highly information-oriented society called for bySociety 5.0. Accordingly, the present embodiment proposes an informationprocessing system in accordance with Society 5.0. Hereinafter, theinformation processing system according to the embodiment of the presentdisclosure will be described with reference to the drawings.

FIG. 2 is a diagram illustrating an example of an overall picture of theinformation infrastructure of the information processing systemaccording to the present disclosure. The information processing systemin FIG. 2 is a system configured in accordance with Society 5.0, and isa system that provides a selection assistance service that uses personalinformation to suggest a product or service suited to a user acting as aconsumer, and thereby helps the user to select a product or service. Thepresent embodiment mostly focuses on a service that assists withordering a food as the selection assistance service, but beforedescribing the service, FIG. 2 will be used to describe an overallpicture of the information infrastructure for achieving the presentembodiment. The information processing system is roughly divided intothree equipment groups.

The first equipment group includes an information terminal 100 such as asmartphone carried by the user. A matching application is installed onthe information terminal 100. The matching application (hereinafterreferred to as the matching app) is an application for choosing orrecommending a product or service suited to the user by using personalinformation about the user. The personal information referred to hereinbroadly encompasses publicly disclosed and non-publicly disclosedinformation related to an individual. For example, the personalinformation includes at least one of a name, a birth date, a homeaddress, an annual income, owned property/real estate information,physical information such as height/weight, genetic information,religion information, medical information such as a medicalhistory/medical records, activity information such as a number ofsteps/burned calories, meal history information, vital sign informationsuch as heart rate/blood pressure, purchase information about purchasesmade at stores/EC sites or the like, keyword information used to performsearches through a Web search engine/AI speaker, text/audiovisualinformation transmitted or received through email/SNS, or movementhistory information. The information terminal 100 is connectible to theInternet through a mobile base station 400 by mobile communicationreferred to as 4G or 5G, for example.

The second equipment group includes a first server 200. The first server200 is a personal information server in which the user's personalinformation is distributed among multiple locations, and the distributedpersonal information is additionally encrypted and stored. For example,the first server 200 manages the personal information by fragmenting andencrypting the user's personal information for storage on a plurality ofstorage devices in the cloud. With this arrangement, a high level ofsecurity is ensured, and the leakage or the like of the personalinformation is prevented. Furthermore, the first server 200 has afunction of returning relevant data in response to a query from a thirdparty, according to the consent of the user in question. Furthermore,the first server 200 has a function of securely sharing personalinformation for which the user has given consent with a business forwhich the user has given consent. In other words, the first server 200functions as an information bank. In this case, the first server 200distributively records a single piece of data in a plurality of storagedevices, for example. An example of a single piece of data is a singlefile in which personal information is recorded.

In the present embodiment, the first server 200 shares specific personalinformation with a specific business on the basis of consent by theuser. Furthermore, the first server 200 has a function for providing theselection assistance service described below.

The matching app described above is developed and/or distributed by thecompany that manages the first server 200, for example. The managingcompany uses the user's personal information to evaluate the user'scompatibility with respect to a product or service that the user maypossibly use. The company that manages the first server 200, the companythat develops the matching app, and the company that distributes thematching app may be the same company or different companies. Theinformation processing system illustrated in FIG. 2 uses the matchingapp described above to achieve the selection assistance service, butthis is merely an example. For instance, the selection assistanceservice may also be achieved by using an app other than the matchingapp, a typical browser, or the like. To handle the user's personalinformation securely, it is preferable to provide the selectionassistance service through a dedicated app such as the matching app.However, this is merely an example, and in the case of handling personalinformation with a low level of security, such as publicly disclosedpersonal information for example, or in the case where a function forensuring security is provided, the selection assistance service may alsobe provided by a means other than the matching app.

The matching app only handles personal information internally in theinformation terminal 100. For example, the matching app presentsproducts or services thought to be optimal for the user under givenconditions such as the time, place, and circumstances. For example, thematching app provides an intermediary function for facilitating economicactivity such as purchasing by the user.

The matching app that openly discloses recommendation functions thathave hitherto been siloed for each service business. An example will bedescribed in terms of an electronic transaction marketplace such as anEC site, which is one well-known example of a service business. Manyproducts are listed on the websites of such a service business. If auser searches for or buys a specific product, other products correlatedwith the specific product (for example, products that are oftenpurchased together) are recommended to the user. Such a recommendationfunction related to purchasing is only valid on the EC site of thatservice business. Consequently, the recommendation function does notexhibit any effect when the user buys a product on an EC site operatedby another service business, orders food at a restaurant, or plans afamily trip for the holidays.

In the future, it is expected that personal information will beaggregated in information banks, and a mechanism allowing anyone toaccess enormous and diverse personal information that is accurate over along period under predetermined conditions will be established. In thiscase, it is possible to use a search or purchase history from an EC siteof a certain service business as well as various personal informationabout the user to estimate the degree of compatibility with respect toall kinds of products and services, and not just the products offered bythe service business. With this arrangement, it is possible to recommendproducts and services that are more valuable to the user from amongvarious options.

To achieve a concept or function like the above, the first server 200envisioned by the present embodiment is a general-purpose storage deviceprovided in the cloud that distributes and encrypts personalinformation.

The third equipment group includes second servers 300 with which eachbusiness manages data specific to each business. In FIG. 2 , threebusinesses referred to as Business X, Business Y, and Business Z eachown or rent a second server 300 to manage and/or provide informationrelated to each company's own products and/or each company's ownservices. The businesses are not limited to just dining businesses asdescribed in detail in the present disclosure. For example, thebusinesses may also be home meal replacement businesses where preparedfoods are available for takeout, such as caterers and fast foodestablishments. Furthermore, the businesses may also be homecooking-oriented businesses mainly focused on the preparation of food athome, such as supermarkets. Furthermore, the businesses may also beautomobile manufacturers, real estate companies, hospitals and clinics,schools, tutoring schools for academic studies or sports, law offices,and businesses that provide products and/or services to generalconsumers.

One effect of the information processing system according to the presentembodiment is that personal information is not handed over to abusiness. In an information bank, it is anticipated that the sharing ofpersonal information with a specific business may be allowed on thebasis of the consent of the person in question.

However, asking the user to make individual decisions about themanagement of personal information is highly burdensome. Even if thetrustee decides on a data management policy, the user may be unable tospecifically grasp which data is handed over to whom, and the user mayfeel a sense of uneasiness.

Accordingly, in the present embodiment, the business that manages thefirst server 200 is forbidden or restricted from using stored personalinformation, such as decrypting and interpreting personal informationfor example, unless the user gives consent.

Furthermore, in the case where an information bank or an informationintermediary that manages personal information and provides the matchingapp under a strict privacy management policy enters the market, the usermay enter into an agreement to receive services provided by theinformation bank or the information intermediary. This arrangement makesit possible to keep personal information from being handed over toanother business.

The information processing system according to the present embodiment isone configuration of a management system for a next-generationinformation society capable of lowering the possibility that personalinformation including sensitive information may be divulged to a thirdparty other than the person in question, and also using enormous amountsof ever-changing personal information to match the user with variousservices. Hereinafter, an information processing system will bedescribed under the above assumptions.

FIG. 3 is a diagram illustrating an overall picture of the informationprocessing system according to the present embodiment in further detail.The information processing system illustrated in FIG. 3 matches menuinformation that a user views to order a food when dining out withpersonal information about the user, and presents an optimal menu forthe user. The information processing system illustrated in FIG. 3includes the information processing system illustrated in FIG. 2 withthe addition of a biometric sensor 600 and a public information server500.

As the businesses on the service-providing side, companies in the diningindustry referred to as Restaurant A, Restaurant B, and Restaurant C areassumed. Restaurant A, Restaurant B, and Restaurant C are respectivelydifferent companies. The information processing system illustrated inFIG. 3 includes a second server 300 managed by Restaurant A, a secondserver 300 managed by Restaurant B, and a second server 300 managed byRestaurant C. Menu information for each restaurant and informationrelated to each store are managed by the second servers 300. The secondservers 300 are cloud servers, for example.

The public information server 500 manages information related torestaurants and public information different from personal information.The public information server 500 is connected to the Internet. Forexample, the public information includes weather information and trafficinformation. The information is used appropriately when relevant tomatching.

The biometric sensor 600 is a biometric sensor such as a smartwatch. Thebiometric sensor 600 is worn by the user carrying the informationterminal 100. The biometric sensor 600 continually calculates vital signinformation about the user. The various vital sign informationcalculated by the biometric sensor 600 is transmitted from the biometricsensor 600 to the information terminal 100 by short-range communicationsuch as Bluetooth (registered trademark). The vital sign information isstored and/or managed by a sensor app installed in the informationterminal 100. The sensor app uploads collected vital sign informationand time information indicating the measurement time of the vital signinformation to the first server 200 according to user accountinformation. With this arrangement, the vital signal information isaccumulated.

The sensor app may also grant access rights with respect to the data tobe stored and/or managed to the matching app or an operating system (OS)of the information terminal 100. In this case, the vital signinformation is uploaded to the first server 200 through the matching appor the OS. The sensor app may store the vital sign information in amemory of the information terminal 100, or upload the vital signinformation to the first server 200 for storage.

FIG. 4 is a diagram illustrating an example of a specific configurationof the information processing system according to the presentembodiment. The information processing system illustrated in FIG. 4includes the information terminal 100, the first server 200, and thesecond servers 300 described with reference to FIGS. 2 and 3 . Note thatin FIG. 4 , the mobile base station 400 and the biometric sensor 600 areomitted from illustration for convenience. The information terminal 100,the first server 200, and the second servers 300 are communicablyinterconnected through a network NT. The network NT is a wide areanetwork, including a mobile phone communication network and theInternet.

The information terminal 100 is a portable information processing devicesuch as a smartphone or tablet. In the present embodiment, theinformation terminal 100 is carried by a user who orders food at arestaurant location (that is, a store). The information terminal 100includes a communication unit 101, a memory 102, a camera 103, anarithmetic unit 104, a display 105, an operation unit 106, a short-rangecommunication unit 107, and a GPS sensor 108.

The communication unit 101 is a communication circuit that connects theinformation terminal 100 to the network NT. The communication unit 101receives menu information described later that is transmitted from thesecond servers 300, and causes the received menu information to bestored in the memory 102. The arithmetic unit 104 performs a process ofreading out the menu information stored in the memory 102. Additionally,the communication unit 101 receives religion information described laterthat is transmitted from the first server 200, and causes the receivedreligion information to be stored in the memory 102. The arithmetic unit104 performs a process of reading out the religion information stored inthe memory 102. With this arrangement, the arithmetic unit 104 acquiresthe religion information and the menu information. Furthermore, undercontrol by the arithmetic unit 104, the communication unit 101 transmitsfood order information described later and a seat ID described later inassociation with each other to one of the second servers 300.

The memory 102 is a non-volatile storage device such as flash memory.The memory 102 stores information 2300 including religion information asexemplified in FIG. 23 and ingredient information 2400 as exemplified inFIGS. 24 and 25 . One set of ingredient information 2400 corresponds toone food, and is information related to the ingredients used in thefood. The menu information contains one or more sets of ingredientinformation 2400. The information 2300 and the ingredient information2400 will be described in detail later. Moreover, the memory 102 storesidentification information that specifies the user. The identificationinformation includes a user identifier (ID). The user ID is anidentifier for the user.

The camera 103 is an imaging device including a CMOS sensor or the like.The camera 103 is used to capture a QR code attached to a seat at arestaurant location (that is, a store).

The arithmetic unit 104 is a processor such as a CPU. The arithmeticunit 104 executes software such as the OS of the information terminal100, the matching app described above, a QR code reader, and a browser.

The arithmetic unit 104 acquires, through a first operation screencorresponding to the first server 200 and displayed on the display 105,a restaurant ID expressing a restaurant compatible with a religionindicated by the religion information corresponding to theidentification information of the user and a seat ID indicating theuser's seat. The first operation screen is an operation screen forreading a QR code provided by the matching app as illustrated in FIG. 15or an operation screen for reading information by NFC as illustrated inFIG. 16 , for example. The restaurant ID is an identifier for arestaurant. In the case where a restaurant has multiple locations (thatis, stores), the restaurant ID may include an identifier for therestaurant and an identifier for the store. The seat ID is an identifierfor a seat disposed in a store. The arithmetic unit 104 may acquire therestaurant ID and the seat ID by analyzing a QR code captured by thecamera 103 when the user inputs a capture instruction into the operationunit 106. Alternatively, in the case where the information terminal 100is brought close to an NFC IC chip disposed in each seat of a restaurantwhile the matching app is active, the arithmetic unit 104 may acquirethe restaurant ID and the seat ID from the IC chip through theshort-range communication unit 107.

The arithmetic unit 104 acquires menu information indicating one or morefoods provided by the restaurant corresponding to the restaurant ID fromthe second server 300 associated with the restaurant over the networkNT, and stores the acquired menu information in the memory 102. Forexample, in the case where the restaurant ID includes an identifier forRestaurant A, menu information is acquired from the second server 300 ofRestaurant A.

The arithmetic unit 104 transmits the identification information storedin the memory 102 to the first server 200, acquires the religioninformation of the user from the first server 200 on the basis of theidentification information, and stores the acquired religion informationin the memory 102.

The arithmetic unit 104 extracts one or more first foods correspondingto the religion information on the basis of the acquired menuinformation and the acquired religion information. The arithmetic unit104 displays the one or more extracted first foods through a secondoperation screen which corresponds to the second server 300 and which isfor receiving an order of food from the restaurant displayed on thedisplay 105.

On the second operation screen, the one or more first foods aregenerated such that a second food that is incompatible with the religioninformation, that is, a second food containing an ingredient that shouldbe avoided, is excluded or grayed-out. With this arrangement, the useris able to smoothly order a food that does not contain an ingredientthat should be avoided.

The second operation screen is an operation screen by which therestaurant receives an order of food from the user as illustrated inFIG. 18 for example, and includes a personalized menu in which foods forindividual users are arranged. The second operation screen is providedthrough the matching app on the basis of a design designated by therestaurant. The user orders a food by inputting an operation ofselecting the desired food from the personalized menu displayed on thesecond operation screen.

The arithmetic unit 104 transmits food order information indicating thefood selected from among the one or more first foods displayed on thesecond operation screen and the seat ID in association with each otherto the second server 300 through the communication unit 101. The foodorder information and the seat ID transmitted to the second server 300are displayed on a display installed in the restaurant location (thatis, store) corresponding to the destination second server 300. Anemployee of the store prepares the food ordered by the user inaccordance with the displayed content, and carries the prepared food tothe user's seat. With this arrangement, the user is able to eat theordered food.

The display 105 is a display panel such as a liquid crystal display(LCD) panel or an organic electroluminescence (OLED) panel for example,and displays various images. For example, the display 105 displays thefirst operation screen and the second operation screen described above.

The operation unit 106 is an input device such as a touch panel, forexample. The operation unit 106 receives an instruction regarding theselection of a desired food by the user from the personalized menu.

The short-range communication unit 107 is a communication circuitprovided with an NFC communication function, and is capable of readinginformation from an IC chip having a NFC communication function and alsowriting information to the IC chip.

The GPS sensor 108 receives radio waves transmitted from GPS satellites,and calculates position information indicating the current position ofthe information terminal 100 on the basis of the radio waves.

This concludes the description of the configuration of the informationterminal 100.

Next, the configuration of the first server 200 will be described. Thefirst server 200 includes a communication unit 201, an arithmetic unit202, and a memory 203. The communication unit 201 is a communicationcircuit for connecting the first server 200 to the network NT. Thecommunication unit 201 transmits the religion information to theinformation terminal 100 in response to a request from the informationterminal 100. The arithmetic unit 202 is a processor such as a CPU. Thearithmetic unit 202 processes personal information about the user storedin the memory 203.

The memory 203 is a plurality of non-volatile storage devices such ashard disk drives. The memory 203 stores personal information about oneor more users. The personal information includes religion informationabout each user. The personal information is stored distributively in anencrypted form in the plurality of storage devices.

The personal information stored by the memory 203 may also includereligion information, biometric information, purchase historyinformation, preference information, and activity history information.The biometric information is information related to the user's body,such as heart rate. The biometric information includes information aboutthe user's allergies or the like. The purchase history information isinformation indicating a purchase history of products (goods) orservices purchased by each user. The preference information isinformation indicating the preferences of each user. The preferenceinformation includes order history information indicating an orderhistory of foods ordered by each user. The activity history informationis information indicating an activity history of each user. For example,the activity history information includes time series data in which userposition information and time information are associated.

Next, the configuration of the second servers 300 will be described. Oneor a plurality of the second servers 300 exist in correspondence witheach restaurant company. Each second server 300 includes a communicationunit 301, an arithmetic unit 302, and a memory 303. The communicationunit 301 is a communication circuit for connecting the second server 300to the network NT. The communication unit 301 transmits the menuinformation to the information terminal 100 in response to a requestfrom the information terminal 100. The arithmetic unit 302 is aprocessor such as a CPU. The arithmetic unit 302 processes menuinformation stored in the memory 303. The memory 303 is a non-volatilestorage device such as a hard disk drive. The memory 303 stores the menuinformation.

FIG. 5 is a diagram illustrating the layout of a certain restaurantlocation (that is, store). In the example of FIG. 5 , the layout of astore 40 of Restaurant A is illustrated. Four tables 410 are installedin the store 40. At each table 410, four chairs 411, 412, 413, and 414are installed.

In some cases, two or more users of different religions may sit down ata single table 410. In such cases, it is imperative to avoid mistakenlyserving a food ordered by a certain user to another user of a differentreligion, and furthermore, the food must not contain an ingredient thatshould be avoided by the user. This is because if such a serving mistakeoccurs, there is a possibility of discomforting the user, andfurthermore, if the user eats the mistakenly served food, there is apossibility that the user's health may be impaired as a result of eatingan ingredient that he or she is unaccustomed to eating.

To avoid such mistakes, an appropriate mechanism for associating a userwith a food ordered by the user is necessary. However, the solutions foravoiding such mistakes are limited at present. In particular, a solutionapplicable to the store of a typical restaurant as illustrated in FIG. 5does not exist. Currently, in small-scale stores where a counter withindividually numbered seats is installed, such association has beenattempted, but because the association is made manually using an orderslip or an order input terminal, serving mistakes are not fullyaddressed.

The present embodiment provides a mechanism for associating and managinga user and a food ordered by the user more reliably. Hereinafter, aspecific example for achieving the mechanism will be described. In thepresent embodiment, a QR code is installed with respect to each seat inthe store 40. FIGS. 6A, 6B, 6C, and 6D are diagrams illustratingexamples of installing a QR code 601 with respect to a seat. In theexample of FIG. 6A, the QR code 601 is placed on the upper surface ofthe backrest of each chair in the store. The QR code 601 contains therestaurant ID and the seat ID of each seat as described above. Here, aQR code is used, but this is merely an example, and any type ofinformation may be adopted insofar as the information can be used toidentify the restaurant ID and the seat ID, such as a barcode.

In the example of FIG. 6B, the QR code 601 is placed on a side surfaceof the seat portion of each chair. By placing the QR code 601 on theside surface of the seat portion, the user operation performed whenreading the QR code 601 is easy to perform.

In the example of FIG. 6C, the QR code 601 is placed on the sides of thetable (for example, the surfaces facing the chairs) rather than on thechairs. In this example, the table seats four people, and therefore fourQR codes 601 corresponding to each seat are placed on the sides of thetable.

In the example of FIG. 6D, the QR code 601 is placed on the surface ofthe tabletop. In this example, the table seats four people, andtherefore four QR codes 601 corresponding to each seat are placed on thesurface of the tabletop. By placing the QR code 601 on the surface ofthe tabletop, the user is able to notice the existence of the QR code601 easily.

The QR code prepared for each seat is used by the information terminal100 of the user ordering a food to acquire the menu information of thestore. Hereinafter, a method of ordering a food using the QR code andthe information terminal 100 will be described sequentially in detail.In the present embodiment, ordering a food includes the case of orderingfrom a standard menu and the case of ordering from a personalized menu.

Note that in FIG. 6 , the QR code 601 is placed with respect to eachseat, but in the case of adopting a configuration that acquires therestaurant ID and the seat ID by NFC, an IC chip including an NFCcommunication function is adopted instead of the QR code 601.

(Ordering from Standard Menu)

The standard menu is used in the case where a user who does not embraceany particular religion or a user who embraces a religion whose doctrinedoes not include any particular eating restrictions orders a food. Thestandard menu is a menu that includes typical foods provided to users atthe store. Hereinafter, the process of ordering a food from the standardmenu will be described using various screens displayed on theinformation terminal 100.

The process of ordering from the standard menu corresponds to theflowchart in FIG. 27 , and accordingly the following description makesreference to the flowchart in FIG. 27 when appropriate. First, a QR codereader is launched, and the QR code reader reads the QR codecorresponding to the seat where the user is sitting. This processcorresponds to step S11 of FIG. 27 .

FIG. 7 is a diagram illustrating an example of an operation screen G1displayed on the information terminal 100 in the case where the usercauses the information terminal 100 to read the QR code. The operationscreen G1 is displayed in a situation where a user who has entered thestore of a restaurant and sat down causes the information terminal 100to read the QR code corresponding to the seat (the user's seat) wherethe user sat down. The QR code corresponding to the user's seat isplaced in one of the configurations illustrated in FIGS. 6A to 6D. Theseated user takes out the information terminal 100 and causes theinformation terminal 100 to read the QR code corresponding to the user'sseat to acquire the standard menu of the store of the restaurant. Thereading of the QR code is achieved using a preinstalled general-purposeQR code reading app referred to as a “QR code reader”. FIG. 7illustrates the operation screen G1 while the user is in the middle ofperforming an operation of aligning the focus information terminal 100with the QR code corresponding to the user's seat. The user adjusts thedirection and position of the information terminal 100 such that the QRcode 601 is contained inside guide lines 701 (the dashed-line square inthe drawing) of the QR code reader. Near the QR code 601 placed for eachseat, the information “Seat Number 18” used by the user or the staff ofthe store to specify the seat and an explanation of the purpose of theQR code 601 (in the drawing, “Personal Matching QR Code” are alsoplaced. Consequently, an image expressing “Seat Number 18” and an imageexpressing “Personal Matching QR Code” are also displayed on theoperation screen G1.

Next, the menu information of Restaurant A is acquired from the QR coderead by the QR code reader, and a standard menu is generated on thebasis of the menu information and displayed on the information terminal100.

This process corresponds to step S12 of FIG. 27 . FIG. 8 is a diagramillustrating an example of an operation screen G2 displayed on theinformation terminal 100 immediately after the QR code reader reads theQR code. On the operation screen G2, a character string obtained as aresult of the QR code reader successfully reading the QR code isdisplayed. In this example, the character string“http://restaurantA.com/QRorder-18” is obtained as the result of readingthe QR code. The operation screen G2 includes a button 801 labeled “Openin Browser” and a button 802 labeled “Send Email”. The button 801 is abutton selected in the case where the user interprets the characterstring obtained as the result of reading the QR code to be a URL. Whenthe button 801 is touched, an Internet browser is launched and a webpage indicated by the URL is displayed on the information terminal 100.

The button 802 is a button selected in the case where the userinterprets the character string obtained as the result of reading the QRcode to be an email address. When the button 802 is touched, an emailapp is launched. Here, the button 801 is touched to view the standardmenu.

When ordering a food from the standard menu, it is not necessary toinstall a specific app on the information terminal 100, and the QR codereader and the browser are sufficient. Consequently, ordering a foodusing the standard menu is easy for many users.

From destination information (for example, the portion of the domainname “restaurantA.com”) included in the character string (for example, aURL) read by the QR code reader, the browser can specify that thedestination is Restaurant A, or in other words specify the restaurantID. Because the numeral at the end of the requested URL is 18, thesecond server 300 can specify that the request is coming from thebrowser of the information terminal 100 that read the QR code of theseat with the seat number “18”. The character string illustrated in FIG.8 does not include the store ID of the store 40, but the store 40(Store-A) may also be explicitly included. In this case, the characterstring signified by the QR code is expressed as“http://restaurantA.com/Store-A/QRorder-18”, for example. The browser ofthe information terminal 100 acquires destination information requestedin this way.

FIG. 9 is a diagram illustrating an example of an operation screen G3including a standard menu of Restaurant A. The operation screen G3 isdisplayed in the case where menu information is received by theinformation terminal 100. The standard menu includes the food includedin the menu information as-is, and does not correspond to the user'sreligion information. The menu information may be the same informationas the menu information used when generating a personalized information,or different information.

On the operation screen G3, a plurality of tile objects 901 are arrangedin a matrix. The standard menu is formed by the plurality of tileobjects 901. One tile object 901 corresponds to one food included on thestandard menu. Each tile object 901 includes the name of the food, theprice of the food, and an image of the food. On the operation screen G3,the standard menu scrolls in response to a scrolling operation performedby the user. With this arrangement, other foods that could not bedisplayed all at once on the operation screen G3 are displayed. In thisway, by performing a scrolling operation, the user is able to view allof the foods included on the standard menu.

The operation screen G3 is displayed by having the browser connect tothe URL (for example, http://restaurantA.com/QRorder-18) indicated bythe character string obtained as the result of reading the QR code, andby having the browser receive the menu information from the secondserver 300 of Restaurant A.

For example, the browser of the information terminal 100 connects to theabove URL and transmits an HTTP requests for an HTML file for drawingthe standard menu of Restaurant A, receives an HTTP response from thesecond server 300 of Restaurant A, and draws the operation screen G3including the standard menu according to the received HTTP response.However, the embodiment is merely an example, and the drawing of theoperation screen G3 may also be achieved by another technical means.

Next, a food is selected by the user from the displayed standard menu.This process corresponds to step S13 of FIG. 27 .

FIG. 10 is a diagram illustrating an example of a scenario in which auser operates the operation screen G3 to order a food from the standardmenu. As the drawing indicates, the user can decide on a food to orderby performing a touch operation using a pointing object 1001 such as afinger. For example, if the information terminal 100 detects that a tileobject 901A corresponding to the food “Ramen B Set” has been touchedonce, the color of the tile object 901A changes from a default firstcolor to a second color indicating that the tile object 901A has beenselected. At this time, the information terminal 100 displays “1”indicating the quantity of the “Ramen B Set” to be ordered in theupper-right corner of the tile object 901A, for example. The abovetherefore demonstrates that the food “Ramen B Set” has been selectedfrom the standard menu in this example. Because the user is able toorder a food by touching the tile object 901 corresponding to each food,the user is able to order a food intuitively and easily with a familiarsense of operation.

Note that although the color of the tile object 901 is changed when theuser selects a food to be ordered, the configuration is not limitedthereto. For example, a pattern of the tile object 901 may be changedfrom a first pattern to a second pattern when the tile object 901 isselected by the user. Alternatively, the color and the pattern of thetile object 901 may be changed from a first color and pattern to asecond color and pattern when the tile object 901 is selected by theuser.

FIG. 11 is a diagram illustrating an example of an operation screen G4displayed when making a final confirmation of the food to order from thestandard menu. The operation screen G4 is displayed in the case where anOrder button (not illustrated in FIG. 9 ) is touched by the user who hasdecided which food to order on the operation screen G3. The operationscreen G4 includes a tile object 901A corresponding to the food selectedon the operation screen G3, a total amount field 1011 indicating thetotal amount (for example 1,100 yen) of the ordered food, and an Orderbutton 1012 for confirming the order. In this way, because a list of thefood to be ordered, the quantity of each food, and the total amount ofthe food to be ordered are displayed on the operation screen G4, theuser is able to check the order content efficiently on a single screen.After checking the order content and finding no problems, the usertouches the Order button 1012 near the bottom of the operation screenG4. With this arrangement, the order of food is confirmed. Furthermore,because the seat number “18” is indicated on the Order button, the useris able to order the food with confirmation that the food will be servedto the user's seat. When the Order button 1012 is touched, theinformation terminal 100 transmits an order request in which the seat ID(in the example of FIG. 11 , the seat number “18”) read from the QR codeis associated with food order information indicating the selected foodto the second server 300 of Restaurant A. With the above, the process ofordering from the standard menu is completed. This process correspondsto step S14 of FIG. 27 .

The process of ordering from the standard menu for general customers isperformed as described above. In this process of ordering, the user whoorders a food causes the information terminal 100 to read a QR code anddisplay the standard menu of Restaurant A in a browser, and orders afood through the standard menu. Consequently, the time and effort ofpre-installing a specific app in the information terminal 100, such asan app distributed by Restaurant A, is saved. Therefore, the user isable to enjoy the service immediately using the information terminal100, and the service is used by many users. In addition, the user isable to select and order a desired food easily from the standard menuwith an intuitive operation. Furthermore, the zoom level of theoperation screen G3 is adjusted by a pinch operation. Consequently, evena vision-impaired user is able to check the foods included on thestandard menu easily. Furthermore, the user is also able to view moreinformation at the same time by reducing the display scale of theoperation screen G3. Furthermore, because the order request is an HTTPrequest in which the food order information is associated with the seatID (for example, the seat number “18”), the second server 300 ofRestaurant A can recognize the food ordered by the user at the seatnumber “18” through the HTTP request, and display the recognized seatnumber “18” and the ordered food on a display inside the store.

With this arrangement, a restaurant employee is able to server theordered food to the seat number “18” without making a mistake.Furthermore, because the standard menu is not a paper medium, RestaurantA can save the time and effort involved in updating or managing thestandard menu in the case of adopting a standard menu on a paper medium.As a result, it is possible to attain a reduction in the human resourcesfor taking orders, a reduction in the risk of complaints about mistakesmade when receiving orders, lowered costs, and increased businessefficiency.

(Ordering from Personalized Menu)

Next, ordering a food from a personalized menu will be described.Whereas the standard menu is a menu provided by a restaurant for generalcustomers, the personalized menu is a menu including foods that arecompatible with the religion information of the user. The process ofordering a food from the personalized menu is illustrated by theflowchart in FIG. 26 described later. Hereinafter, the process ofordering a food from the personalized menu will be described whilereferring to the flowchart in FIG. 26 when appropriate.

The ordering of a food through the personalized menu is initiated whentriggered by the launching of the matching app. FIG. 12 is a diagramillustrating an example of an authentication screen G101 displayed onthe information terminal 100 immediately after the user ordering a foodlaunches the matching app. The authentication screen G101 is a screenfor performing user authentication through fingerprint authentication.On the authentication screen G101, a fingerprint image 1201 illustratinga representation of a fingerprint in the center is displayed, and themessage “Confirm fingerprint to continue” is displayed below thefingerprint image 1201. With the above, the authentication screen G101prompts the user to perform fingerprint authentication. “PersonalMatching” is displayed near the top of the authentication screen G101.With this arrangement, the user is made to recognize that theauthentication screen G101 is a screen of the matching app. The sameapplies to FIGS. 13 to 17 described later.

FIG. 13 is a diagram illustrating an example of another authenticationscreen G102. The authentication screen G102 is an example of a screenfor performing user authentication through face authentication. On theauthentication screen G102, a dashed line 1301 illustrating arepresentational outline of a face is displayed in the center, such thatan image of the user's face from the front will be captured at asuitable size by the information terminal 100. The user adjusts thedirection and position of the information terminal 100 such that theuser's own face from the front is displayed so as to be contained withinthe dashed line 1301.

If another method of user authentication capable of sufficientauthentication accuracy with a lower user burden compared to the userauthentication methods described above is available, the other methodmay also be adopted. As the method of user authentication, two-factorauthentication which is generally considered to be highly secure may beadopted, or a method of inputting a user ID and a password may also beadopted.

FIG. 14 is a diagram illustrating an example of a home screen G103displayed immediately after user authentication by the matching appends. On the home screen G103, the app title “Personal Matching” isdisplayed in an upper row, and a plurality of tile objects 1401 aredisplayed in a matrix in a middle row. Each of the tile objects 1401 isassociated with a linked function built into the matching app or aseparate app. A separate app is an app launched from inside the matchingapp, for example. In this case, five tile objects 1401 labeled “a”, “b”,“c”, “d”, and “e” are displayed. The tile objects 1401 are associatedwith dedicated functions for matching with internal company products orinternal company services (for example, an app within the matching app)linked to the matching app. With this arrangement, the user is able touse five types of linked functions indicated by “a”, “b”, “c”, “d”, and“e”. The grayed-out tile objects 1401 are empty tile objects for which alinked function has not been installed. On a lower row of the homescreen, a Scan button 1402, a Map button 1403, an Account button 1404,and a Home button 1405 are displayed in order from the left. The fourbuttons are static buttons. The Scan button 1402 is a button used in thecase of reading a QR code or the like linked to a service provided by abusiness such as the restaurant described above. The Map button 1403 isa button for using a map screen to display stores supporting thematching app in the current vicinity of the information terminal 100.The Account button 1404 is a button for registering and editing theaccount information about the user. Registering and editing accountinformation includes actions such as setting a personal authenticationand setting a linked function with the first server 200, for example.The Home button 1405 is a button for returning the screen display to thehome screen G103 illustrated in the diagram.

On the home screen G103, the tile objects 1401 for linking to a linkedfunction, a different app, or a service from another business arearranged together in the middle row. The display or non-display as wellas the arrangement of these tile objects 1401 are settable according touser preference. Consequently, the user is able to use a single matchingapp to acquire products and/or services suited to the user on the basisof the personal information from among the products or services providedby a large number of businesses (such as home appliance retailers,DVD/Blu-ray (registered trademark) rental shops, bookstores, coffeeshops, and taxis, for example).

FIG. 15 is a diagram illustrating an example of an operation screen G104displayed on the information terminal 100 in the case where the user,having launched the matching app, causes the information terminal 100 toread the QR code corresponding to the user's seat. The operation screenG104 (an example of the first operation screen) is mostly similar to theoperation screen G1 in FIG. 7 . The operation screen G104 differs fromthe operation screen G1 in that the app title display on the upper rowis “Personal Matching” on the operation screen G104.

From destination information (for example, the domain name“restaurantA.com”) included in the character string (for example, a URL)read by the QR code reader, the matching app can specify that thedestination is Restaurant A. Because the numeral at the end of the URLrequested by the matching app is “18”, the second server 300 receivingthe request can recognize that the request was transmitted from theinformation terminal 100 that read the QR code of the seat with the seatnumber “18”. The present embodiment illustrates an example where theuser sitting in the seat with the seat number “18” of the store 40 ofRestaurant A orders a food from the store 40. In the request, thematching app may also specify the store 40 (Store-A) explicitly. In thiscase, the character string signified by the QR code is set to“http://restaurantA.com/Store-A/QRorder-18”, for example. In this way,the matching app can acquire information (for example, the restaurantID) specifying the destination.

The process of launching the matching app, performing userauthentication, and reading the QR code described above corresponds tostep S1 of FIG. 28 .

In the case of adopting a configuration in which the restaurant ID andthe seat ID are acquired by NFC instead of a QR code, the followingfirst operation screen is used. FIG. 16 is a diagram illustrating anexample of an operation screen G1011 displayed on the informationterminal 100 in the case of acquiring a restaurant ID and a seat IDthrough NFC. Like the operation screen G104, the operation screen G1011is also displayed in the case where the Scan button 1402 is touched onthe home screen G103.

On the operation screen G1011, “Personal Matching” is displayed near thetop to indicate that the screen is a screen of the matching app. In thecenter of the screen, an NFC mark 1601 symbolically representing NFC anda message (for example, “Hold device up to NFC mark”) prompting the userto bring the information terminal 100 close to an object with the NFCmark 1601 attached are displayed.

In the case where the restaurant ID and the seat ID are acquired by NFC,each seat in the restaurant is provided with an IC chip including amemory that stores the restaurant ID and the seat ID and an NFCcommunication function. The NFC mark 1601 is displayed on the IC chip.With this arrangement, the user seeing the NFC mark 1601 on theoperation screen G1011 can easily understand that he or she bring theinformation terminal 100 close to the IC chip disposed on the user'sseat. As described above with regard to the QR code, it is sufficient ifthe memory of the IC chip stores a restaurant URL from which therestaurant ID and the seat ID are specifiable.

Next, the process by which the matching app accesses the second server300 of Restaurant A and acquires the menu information will be described.This process corresponds to step S2 of FIG. 28 .

FIG. 17 is a diagram illustrating an example of a display screen G105displayed on the information terminal 100 when the matching app isgenerating a personalized menu. On the display screen G105, a rotatingcircular arrow object 1501 is displayed. Additionally, “Matching withmenu of Restaurant A . . . ” is displayed below the arrow object 1501.With this arrangement, the user can recognize that the matching app isbusy.

While the display screen G105 is being displayed, the matching app ofthe information terminal 100 cooperates with the second server 300 ofRestaurant A and the first server 200 to generate a personalized menu.Specifically, the matching app accesses the second server 300 ofRestaurant A on the basis of the URL read through the QR code 601 orNFC, and acquires the menu information. Having acquired the menuinformation, the matching app detects a data attribute of the menuinformation. Because the menu information is food-related information,the data attribute detected at this point is a food attribute.

The menu information is an HTML file, for example. In the menuinformation, the data attribute are described as being the foodattribute in a predetermined format, for example. It is sufficient forthe matching app to detect that the data attribute of the menuinformation is the food attribute on the basis of the format.Alternatively, the matching app may also detect that the data attributeof the menu information is the food attribute from the domain name ofthe URL indicated by the QR code, for example. Here, because the domainname “restaurantA.com” indicates Restaurant A, the data attribute of themenu information is determined to be the food attribute. Alternatively,the matching app may analyze the acquired menu information, and in thecase of obtaining an analysis result indicating food-related data, thematching app may determine that the data attribute of the menuinformation is the food attribute. Alternatively, the matching app mayacquire supplemental information indicating the data attribute of themenu information from the second server 300, and thereby detect that thedata attribute of the menu information is the food attribute. Anothermethod may also be adopted as the implementation for detecting the dataattribute of the menu information, insofar as the method can be used toidentify the data attribute.

Next, the process by which the matching app acquires religioninformation from the second server 300 will be described. This processcorresponds to step S3 of FIG. 28 .

Having determined that the data attribute of the menu information is thefood attribute, the matching app requests the first server 200 toacquire the most recent religion information treated as a dietaryrestriction of the user classified under the food attribute. The requestincludes the user ID. The first server 200 receives the request andextracts the most recent religion information from the distributivelyencrypted personal information on the basis of the user ID. Theextracted religion information is transmitted from the first server 200to the information terminal 100. With this arrangement, the matching appacquires the religion information. Details about the religioninformation will be described later using FIG. 23 .

Having acquired the religion information, the information terminal 100executes a process of cross-referencing the menu information ofRestaurant A with the religion information and generating a personalizedmenu. This process corresponds to step S4 of FIG. 28 . At this time, thedisplay screen G105 illustrated in FIG. 17 is still being displayed onthe information terminal 100, but the matching app is executing theprocess of cross-referencing the menu information with the religioninformation and generating a personalized menu corresponding to thereligion information.

Here, the method of generating a personalized menu to be included on thesecond operation screen has the following variations.

In the first variation, the arithmetic unit 104 generates, on the basisof the menu information and the religion information, a personalizedmenu in which foods (second foods) not compatible with the religioninformation, or in other words foods containing an ingredient thatshould be avoided from among the foods included in the menu informationare excluded or grayed out. As an example, assume that beef is aningredient that the user should avoid, and beef curry is included in themenu information. In this case, the tile object 901 indicating beefcurry is excluded from the personalized menu or grayed out. Graying outrefers to a display method in which the tile object 901 for beef curryis displayed semi-transparently with a gray color, for example. Notethat because the religion information includes information related toingredients that should be avoided as described later using FIG. 23 ,the arithmetic unit 104 can specify which ingredients should be avoidedfrom the religion information.

In the second variation, the arithmetic unit 104 generates apersonalized menu including a food with an added ingredient containing anutrient that tends to be deficient in correspondence with the religionindicated by the religion information. As illustrated in FIG. 22 ,religions such as Islam, Judaism, Hinduism, Christianity, and Buddhismexist, and ingredients that should be avoided are stipulated by thedoctrine of each religion. Consequently, nutrients that tend to bedeficient for the followers of each religion can be roughly estimated.Accordingly, the arithmetic unit 104 may cause the memory 102 to storenutrients that tend to be deficient in correspondence with a religion inadvance, and include foods containing the nutrients on the personalizedmenu. Here, “a food” refers to a certain single food. For example,people who embrace Hinduism are forbidden from consuming animal-basedingredients, and consequently tend to be deficient in protein, vitamins,calcium, iron, and zinc. For this reason, foods containing theseingredients are added to the personalized menu for users who embraceHinduism.

In the third variation, the arithmetic unit 104 generates a personalizedmenu including a display indicating a combination of foods forsupplementing a nutrient that tends to be deficient in correspondencewith the religion indicated by the religion information. For example,followers of Hinduism tend to be deficient in iron. Boiled Japanesemustard spinach and natto are rich in iron. Consequently, in one exampleof this variation, a food set including a side dish of boiled Japanesemustard spinach or natto may be included on the personalized menu. Asanother example, as described later using FIG. 38 , if the user selectsa certain food from the personalized menu, a screen encouraging the userto order a food containing a deficient nutrient in addition to thecertain food may be displayed on the display 105. In this case, thearithmetic unit 104 may determine a food containing a deficient nutrientpredetermined for each food as the food to recommend to the user.

Another example of a combination of foods for supplementing a nutrientthat tends to be deficient is a food set in which a food rich in VitaminC, which works to increase iron absorption, is paired with a foodcontaining iron.

Furthermore, the method of preparing the food may also be changed tosupplement an nutrient that tends to be deficient. For example, thearithmetic unit 104 may also instruct the second server 300 of thecorresponding restaurant to change the method of preparing the food toreduce the heating temperature and the heating time of the food andthereby increase the level of vitamin absorption.

In the fourth variation, the arithmetic unit 104 generates apersonalized menu including a food with an added ingredient containing anutrient in which the user has been deficient in past meals consumed bythe user over a predetermined period. The predetermined period refers toa period going back a week or a month from the present, for example.Nutrients that tend to be deficient for the followers of each religioncan be roughly estimated according to each religion, as described abovein the second variation. The estimation is also similarly applicable toestimating nutrients that tend to be deficient in the predeterminedperiod. Consequently, the arithmetic unit 104 may cause the memory 102to store nutrients that tend to be deficient over a predetermined periodaccording to each religion in advance, and include foods containing thenutrients on the personalized menu.

Alternatively, the arithmetic unit 104 may acquire food order historyinformation for the predetermined period from the first server 200, andspecify a nutrient that the user is deficient in from the order historyinformation. For example, the order history information includesinformation related to foods that the user ordered in the past. Theinformation related to foods includes a food name in addition to theingredients and quantities thereof used in each food, for example. Ifthe ingredients and ingredient quantities are known, each nutrientincluded in the ingredients and the quantity of each nutrient can bespecified. Accordingly, the arithmetic unit 104 specifies nutrients andthe quantity of each nutrient consumed by the user for each foodincluded in the order history information, and calculates the cumulativevalue of the quantity of each specified nutrient over the predeterminedperiod. Next, the arithmetic unit 104 determines whether or not thecumulative value falls below a predetermined threshold for eachnutrient, and specifies a nutrient with a quantity determined to fallbelow the threshold as a deficient nutrient.

In the fifth variation, the arithmetic unit 104 generates a personalizedmenu including a display indicating a combination of foods forsupplementing a nutrient in which the user has been deficient in pastmeals consumed by the user over a predetermined period. In thisvariation, the technique described in the fourth variation is used tospecify a nutrient in which the user has been deficient over apredetermined period. Additionally, the technique indicated in the thirdvariation is used to display a combination of foods for supplementingthe deficient nutrient.

These five variations may also be combined appropriately.

Having generating the personalized menu, the matching app uses thebrowser to display the personalized menu on the information terminal 100in the same way as when ordering from the standard menu. The foodslisted on the personalized menu all account for the most recent religioninformation. Consequently, the user is able to order a food smoothly.

FIG. 18 is a diagram illustrating an example of an operation screenincluding a personalized menu. On an operation screen G106 (an exampleof a second operation screen), a plurality of tile objects 901 arearranged in a matrix, similarly to the operation screen G3. On theoperation screen G106, the personalized menu is configured to scroll inresponse to a scrolling operation performed by the user. Thepersonalized menu is formed by the plurality of tile objects 901. In thepersonalized menu on the operation screen G106, the tile objects 901indicating meat-containing foods such as “Steak Set”, “Ramen A Set”,“Ramen B Set”, and “Hamburger” that were included on the standard menuin FIG. 8 have been changed to tile objects 901 indicating foods thatthe user is able to eat, such as “Ramen and Vegetable Gyoza”, “VegetableCurry and Oolong Tea”, “Pasta in Tomato Sauce”, and “Meat-alternativeHamburger”. Note that the example in FIG. 18 corresponds to aconfiguration combining the first variation (excluding foods containingan ingredient that should be avoided) and the second variation (addingan ingredient containing a nutrient that tends to be deficient)described above.

“Restaurant A Custom Menu” is displayed near the top of the operationscreen G106, thereby clearly indicating that the personalized menupresented on the operation screen G106 is a menu customized to the user.This arrangement appeals to the user by indicating that the personalizedmenu included on the operation screen G106 is a menu of foods that usercan eat with assurance.

On the operation screen G106, an Order button 1801 is displayed abovethe tile objects 901. The Order button 1801 switches the screen displayto the operation screen G107 illustrated in FIG. 20 after a tile object901 is selected.

The matching app displaying the personalized menu executes a process ofreceiving the selection of a food to be ordered from the user. Thisprocess corresponds to step S5 of FIG. 28 . FIG. 19 is a diagramillustrating an example of a scenario in which the user operates theoperation screen G106 to order a food from the personalized menu.

In the example of the operation screen G106, a tile object 901B of thefood “Ramen and Vegetable Gyoza” has been touched once from thepersonalized menu. Consequently, the color of the tile object 901B ischanged from a first color to a second color, and the order quantity “1”is also displayed in the upper-right corner. In this way, the user canorder a food easily and intuitively with a touch operation using apointing object 1001 such as a finger.

Note that although the color of the tile object 901 is changed when theuser selects a food to be ordered, the configuration is not limitedthereto. For example, a pattern of the tile object 901 may be changedfrom a first pattern to a second pattern when the tile object 901 isselected by the user. Alternatively, the color and the pattern of thetile object 901 may be changed from a first color and pattern to asecond color and pattern when the tile object 901 is selected by theuser.

Having receiving an order of a food through the operation screen G106,the matching app transmits an order request in which the food orderinformation and the seat ID are associated to the second server 300.FIG. 20 is a diagram illustrating an example of an operation screen G107displayed when making a final confirmation of the food to order from thepersonalized menu. The operation screen G107 is displayed in the casewhere the Order button 1801 is touched on the operation screen G106.

On the operation screen G107, the tile object 901B corresponding to thefood selected on the operation screen G106 and a total amount 2001indicating the total (¥1,000) of the ordered food (ramen and vegetablegyoza) are displayed. In addition, an Order button 2000 is included onthe operation screen G107. The content of the operation screen G107 isthe same as the operation screen G4 for the standard menu. When theOrder button 2000 is touched, an order request in which the food orderinformation and the seat ID are associated is transmitted to the secondserver 300 of Restaurant A. The order request is displayed on a displayinstalled in the store of Restaurant A. With this arrangement, arestaurant staff member can grasp the order content from the displayedseat number “18” and the food order information, start cooking, andserve the ordered food to the seat number “18”.

FIG. 21 is a diagram illustrating an example of an order history screendisplayed when the user checks the order history so far. The orderhistory screen G108 includes a Being Prepared frame 2101 provided on theleft side of the screen and an Already Served frame 2102 provided on theright side of the screen. The tile object 901B is disposed inside theBeing Prepared frame 2101 to indicate that the order has been receivedand the food is currently being prepared. A tile object 901 is disposedinside the Already Served frame 2102 to indicate that the food has beenserved. In the example of FIG. 20 , no foods have been served yet, andtherefore no tile object 901 is disposed inside the Already Served frame2102. Currently, the “Ramen and Vegetable Gyoza” tile object 901B isdisposed in the Being Prepared frame 2101. Near the bottom of the orderhistory screen G108, the total (¥1,000) of the food ordered so farthrough the matching app is displayed in an easily understandable way.By checking the order history screen G108, the user is able to see at aglance the quantity and price of the food ordered so far. Note that an“Order History” button (not illustrated) may also be provided on theoperation screen G106, and the order history screen G108 may bedisplayed when the “Order History” button is touched.

The process of ordering a food from the personalized menu for RestaurantA is performed as above. The user who orders food uses the matching appdistributed by the first server 200, and by simply causing theinformation terminal 100 to read the QR code of the user's seat at therestaurant, the user is able to acquire a personalized menu thataccounts for the user's own religion information, and order a food fromthe personalized menu. This is an unprecedented method of orderingpersonalized foods conveniently and mistake-free. To execute the method,the user simply installs the matching app in the information terminal100 in advance.

(Religions)

Next, religions will be described. FIG. 22 is a table summarizingvarious religions and ingredients that users should avoid according toeach religion. In this example of a table, the religions are classifiedinto “Islam”, “Judaism”, “Hinduism”, “Christianity”, and “Buddhism”. Inthe table, “X” indicates an ingredient that should be avoided as ageneral rule according to the corresponding religion. Also, “Y”indicates an ingredient that is preferably avoided according to thecorresponding religion, or an ingredient that is stipulated as aningredient that should be avoided according to certain sects.Hereinafter, an ingredient marked with “X” is referred to as an“ingredient that should be avoided in general”, an ingredient markedwith “Y” is referred to as an “ingredient that should be avoided ifnecessary”, and both are collectively referred to as an “ingredient thatshould be avoided”.

Islam has food that is permitted to be eaten in accordance with itsdoctrine (halal food). According to Islam, pork and alcohol areingredients that should be avoided in general, while fish and dairy areingredients that should be avoided if necessary.

Judaism has strict dietary laws in accordance with its doctrine(kashrut), and food that is permitted to be eaten (kosher). According toJudaism, pork in particular is an ingredient that should be avoided ingeneral, while chicken, fish, eggs, and dairy are ingredients thatshould be avoided if necessary.

Hinduism has dietary laws in accordance with its doctrine, in whichbeef, pork, and fish are ingredients that should be avoided in general,while chicken and eggs are ingredients that should be avoided ifnecessary.

Christianity has little to no restrictions on eating. However, somesects impose various restrictions related to eating and drinking.

Every religion and sect includes some people who obey dietary lawsstrictly, and others who do not. Furthermore, people who followvegetarianism irrespectively of religion have further dietaryrestrictions. In the present embodiment, it is possible to generate apersonalized menu suited to each user with consideration for suchcircumstances of each user.

For example, the followers of Hinduism, certain sects of Christianity,and certain sects of Buddhism are forbidden or discouraged fromconsuming animal-based food products. Such followers tend to bedeficient in protein, vitamins, calcium, iron, and zinc. People whostrictly obey the dietary restrictions of a specific religion refrainfrom consuming specific ingredients over a long period of time, andconsequently tend to have chronic deficiencies in specific nutrients orminerals necessary for maintaining health. To absorb such nutrients thattend to be deficient from limited food products, it is desirable to useingredients which are allowed to be eaten and which are rich in thenutrients that tend to be deficient in correspondence with the religionor sect to add an ingredient to a food, changing the method of preparinga food, or combine with another food such that a good balance ofnecessary nutrients is absorbed.

For example, plant-based ingredients rich in vitamin B12 includeseaweeds (dried nori, seasoned nori, and toasted nori). Plant-basedingredients rich in vitamin D include mushrooms such as dried shiitakeand wood ear. Plant-based ingredients rich in zinc include seaweeds(toasted nori, wakame), vegetables (dried strips of daikon radish,edamame), beans (soybean flour, natto), and the like. Plant-basedingredients rich in calcium include vegetables (Japanese mustardspinach, dried hijiki, bok choy), beans (tofu, natto), and the like.Plant-based ingredients rich in iron include vegetables (Japanesemustard spinach, spinach), beans (natto, deep-fried tofu), and the like.Consequently, it is desirable for users deficient in these nutrients toconsume the above ingredients and thereby supplement the deficientnutrients.

Because a user who follows a specific religion needs knowledge like theabove to choose foods with consideration for the nutrients that tend tobe deficient, and because the practice is burdensome, long-termcompliance is thought to be difficult.

Accordingly, in the present embodiment, as described in the second tofifth variations above, the information terminal 100 automaticallysuggests foods with an added ingredient containing a nutrient that tendsto be deficient, foods in which the preparation method has been modifiedsuch that a nutrient that tends to be deficient is not destroyed, andcombinations of foods capable of supplying a nutrient that tends to bedeficient to the user through the personalized menu.

(Data Structure)

Next, the data structure of the religion information and the ingredientinformation 2400 will be described. FIG. 23 is a diagram illustrating anexample of a data structure of information 2300 including user religioninformation returned from the first server 200 to the matching app. Theinformation 2300 is written as fields and values associated with eachother to enable easy processing by an arithmetic device. For example,the information 2300 is contained in a single file in the JavaScript®Object Notation (JSON) format.

An “information category” field indicates what type of personalinformation is included in the information 2300. The information 2300includes data related to food, and therefore “food” is written as thevalue paired with the “information category” field. The “informationcategory” field is written at the beginning of the information 2300.

A “publisher” field is for identifying the corporation that acquired theinformation 2300 by asking the user through the matching app. Here,questions are asked by ABC Matching Co., Ltd. to acquire the information2300, and therefore ABC Matching is written as the value correspondingto the “publisher” field.

A “publication date” field indicates the publication date of theinformation 2300 by the publisher. Here, 2/7/2020 is written as thevalue corresponding to the “publication date” field. The value may alsoinclude a time in addition to the publication date. Also, time zoneinformation may be included in the value.

A “data class” field specifically designates the content of theinformation 2300. Here, “religion information” for example is written asthe value corresponding to the “data class” field. This arrangementindicates that the data written in the subsequent fields is religioninformation about the relevant user.

Note that it is sufficient for the information terminal 100 to interpretthat religion information is included in the information 2300 on thebasis of the written content of the values respectively corresponding tothe “information category” field and the “data class” field.Alternatively, the information terminal 100 may interpret that religioninformation is included in the information 2300 on the basis ofinformation related to the information 2300 (for example, the file nameof the information 2300).

A “data measurement date” field indicates date information about whenthe value “religion information” corresponding to the preceding “dataclass” field was measured. Here, 2/7/2020 is written as the valuecorresponding to the “data measurement date” field. The value may alsoinclude a time in addition to the measurement date. Also, time zoneinformation may be included in the value. Note that in the case where aplurality of religion information is stored for the relevant user in thefirst server 200, the information 2300 with the most recent date writtenin the “data measurement date” field is used.

“Religion type” indicates the religion embraced by the user. The variousreligions listed in FIG. 22 may be adopted as the “religion type”.Alternatively, the religion type may include information indicating asect in addition to information indicating a religion. Here, because therelevant user is Buddhist, “Buddhism” is written as the valuecorresponding to “religion type”.

After the “religion type” field, resistance values indicating the degreeof resistance the user feels against eating each of the ingredients ofbeef, pork, chicken, fish, eggs, dairy, and alcohol are written. Theresistance value is expressed in six levels from 0 to 5, for example,with a larger numerical value indicating a lower level of resistance.For example, an ingredient with a resistance value of “0” is aningredient that should be avoided absolutely, whereas an ingredient witha resistance value of “5” is an ingredient for which the user feels noresistance against eating.

Because the “religion type” of the user is Buddhism, beef, pork,chicken, and fish are ingredients that should be avoided if necessary,and consequently the resistance values of these ingredients are set to“1”. On the other hand, eggs, diary, and alcohol are ingredients thatthe user is allowed to eat, and consequently the resistance values ofthese ingredients are set to “3”, “5”, and “5”. The reason why theresistance value of eggs is “3” is that the user feels some resistanceagainst eating eggs. As illustrated by the table in FIG. 22 , theingredients that should be avoided are predetermined according toreligion. For this reason, the resistance value of each ingredient isset by default to “0” for ingredients that should be avoided in general,“1” for ingredients that should be avoided if necessary, and “5” foringredients that are allowed to be eaten. However, the user is able toinput a resistance value less than “5” through the matching app withrespect to ingredients that the user is allowed to eat, but for whichthe user feels resistance against eating. Also, even if an ingredient isan ingredient that should be avoided in general, a user who does notstrictly adhere to the doctrine of the religion is able to input aresistance value greater than “0” through the matching app with respectto ingredients that should be avoided in general. In addition, the useris also able to input a resistance value greater than “1” with respectto ingredients that should be avoided if necessary.

The resistance values are an example of level information indicating thedegree to which to avoid an ingredient that should be avoided accordingto the religion of the user.

On the other hand, unless ingredient information for each food isdescribed in the menu information acquired from the second server 300 ofRestaurant A, the information terminal 100 is unable to specify whichfoods contain ingredients that should be avoided by each user. FIG. 24is a diagram illustrating an example of a data structure of theingredient information 2400 forming the menu information returned fromthe second server 300. In FIG. 24 , ingredient information 2401 for theRamen B Set is illustrated. The Ramen B Set includes shoyu ramen andsoup dumplings. Consequently, when determining whether or not the RamenB Set contains ingredients that should be avoided by the user, theinformation terminal 100 references ingredient information 2402 forshoyu ramen and ingredient information 2403 for soup dumplings.

The ingredient information 2400 is written as fields and valuesassociated with each other to enable easy processing by an arithmeticdevice. The ingredient information 2400 is embedded together with tagsindicating the ingredient information in menu information in HTML fileformat for example that is acquired from the second server 300 of eachrestaurant. However, this is merely an example, and the ingredientinformation 2400 may also be structured in JSON format and contained ina separate file prepared for each food.

The “food name” field indicates the food to which the ingredientinformation relates. The Ramen B Set is written as the valuecorresponding to the “food name” field in the example of the ingredientinformation 2401, shoyu ramen is written as the value corresponding tothe “food name” field in the example of the ingredient information 2402,and soup dumplings is written as the value corresponding to the “foodname” field in the example of the ingredient information 2403.

A list of the ingredients used is written in the fields and valuesfollowing the “food name” field. For example, because the Ramen B Setincludes a bowl of shoyu ramen and three soup dumplings, the ingredientinformation 2401 includes a “shoyu ramen” field and a “soup dumpling”field, in which “1” is written as the value corresponding to shoyu ramenand “3” is written as the value corresponding to soup dumpling. Becausethe ingredient information 2401 is ingredient information 2400 for afood set, field and values related to the ingredients contained in thefoods are not provided.

The ingredient information 2402 is ingredient information 2400 for shoyuramen as a single dish, and therefore each ingredient and the quantityof each ingredient contained in shoyu ramen, such as “50 g” of “flour”and “5 g” of “salt”, are written in association with each other. Likethe ingredient information 2402, the ingredient information 2403 is alsoingredient information 2400 for soup dumplings as a single dish, andtherefore each ingredient and the quantity of each ingredient containedin a soup dumpling are written in association with each other.

As indicated by the ingredient information 2402 and the ingredientinformation 2403, the Ramen B Set contains “pork char siu”, “groundpork”, and “chicken stock” as ingredients. However, in the information2300 about the user, the resistance value is set to “1” for each of porkand chicken, indicating that “ground pork” and “chicken stock” areingredients that should be avoided if necessary for the user.Consequently, it is desirable for the user not to eat the Ramen B Set.Accordingly, the arithmetic unit 104 of the information terminal 100suggests the food set of ramen and vegetable gyoza illustrated in FIG.25 instead of the Ramen B Set for example to the user through thepersonalized menu.

FIG. 25 is a diagram illustrating an example of ingredient information2404 for ramen and vegetable gyoza. As indicated by the ingredientinformation 2405 and the ingredient information 2406, in the ramen andvegetable gyoza, bok choy is used instead of pork char siu, Chinese leekis used instead of ground pork, and cabbage is used instead of chickenstock. With this arrangement, “ramen and vegetable gyoza” that the useris allowed to eat is displayed on the personalized menu, and the user isable to order a food that he or she is allowed to eat smoothly from thepersonalized menu.

When substituting foods, the information terminal 100 cross-referencesthe ingredient information 2402 and the ingredient information 2403illustrated in FIG. 24 with the religion information included in theinformation 2300 about the user, and extracts ingredients to be replacedfrom among the ingredient information 2402 and the ingredientinformation 2403. For example, ingredients with a resistance value of“0” or “1” in the information 2300 are extracted as ingredients to bereplaced in the ingredient information 2402 and the ingredientinformation 2403. The ingredients extracted as the ingredients to bereplaced are labeled “Bad” in the ingredient information 2402 and theingredient information 2403. Additionally, the information terminal 100substitutes the ingredient information 2402 and the ingredientinformation 2403 by replacing the ingredients to be replaced and theirquantities with alternative ingredients and alternative quantitiespredetermined for each food with respect to the extracted ingredients tobe replaced. Furthermore, the information terminal 100 substitutes thefood name in the ingredient information with a predetermined food nameaccording to the replaced ingredients. With this arrangement, theingredient information 2400 illustrated in FIG. 25 is obtained. It issufficient for the information terminal 100 to substitute foods byapplying the above process to each food included in the acquired menuinformation.

Alternatively, if an alternative food is predetermined according toreligion for a food containing an ingredient to be replaced, theinformation terminal 100 may substitute the food containing theingredient to be replaced with an alternative food.

(Overall Picture of Process)

Next, an overall picture of a process by the information processingsystem according to the present embodiment will be described. FIG. 26 isa sequence diagram illustrating an example of an overall picture of aprocess by the information processing system according to the presentembodiment.

The matching app, launched by the information terminal 100 in accordancewith an operation performed by the user who enters and takes a seat inRestaurant A, executes user authentication (step S501). If userauthentication is successful, the matching app displays the home screenG103 (see FIG. 14 ).

If the Scan button 1402 is touched by the user on the home screen G103,the matching app launches a scan function and acquires the QR codecorresponding to the user's seat (step S502). With this arrangement, thematching app acquires the URL of the second server 300 (HTTP server) ofRestaurant A treated as the destination.

Having acquired the URL, the matching app transmits a request (forexample, an HTTP request) for acquiring menu information to the secondserver 300 of the Restaurant A on the basis of the URL (step S503). Atthis point, the matching app may also transmit the seat ID included inthe QR code as described above to the second server 300.

The second server 300 receiving the request uses an HTTP server functionto transmit an HTTP response containing the menu information. With thisarrangement, the matching app receives the menu information ofRestaurant A (step S504).

The matching app receiving the menu information analyzes the receivedmenu information and detects that the data attribute of the receivedmenu information is the food attribute. In this case, it is sufficientif the matching app detects the food attribute through internal analysisof the menu information. Alternatively, the matching app may detect thefood attribute from supplemental information transmitted separately fromthe menu information. Thereafter, because the data attribute of thereceived menu information is the food attribute, the matching appdetermines religion information as the data for performing matching(step S505).

Next, the matching app transmits an HTTP request for acquiring thereligion information of the user to the first server 200 on the basis ofthe user ID of the authenticated user (step S506). The first server 200receives the HTTP request using an HTTP server function, extracts thereligion information of the user from the memory 203 on the basis of theuser ID, and transmits an HTTP response containing the extractedreligion information to the matching app. With this arrangement, thematching app receives the religion information of the user (step S507).

The matching app receiving the religion information uses one of themethods indicated by the five variations described above to generate apersonalized menu corresponding to the religion information of the userfrom the received menu information and the received religion information(step S508).

The matching app generates the style (user interface (UI) design) of thevarious screens displayed in the process from step S501 to step S508according to the style of the matching app, but generates the style (forexample, UI design) of the various screens from the personalized menu toorder completion according to a style provided by Restaurant A. In otherwords, each business (for example, each restaurant) that acts as aservice provider is able to communicate with users (for example,customers) in a style (for example, UI design) preferred by eachbusiness while also remaining within the matching app developed byanother company (for example, the information bank or an informationintermediary). This means that each of the standard menu and thepersonalized menu described above can be expressed in a style (forexample, UI design) designated by Restaurant A, and furthermore, themenus can be given a uniform appearance.

Having generated the personalized menu, the matching app displays theoperation screen G106 including the generated personalized menu in astyle designated by Restaurant A, and accepts an instruction selecting afood to be ordered by the user from the personalized menu (step S509).

Having accepting the selection instruction, the matching app transmitsan order request in which the user's seat ID and food order informationindicating the food to be ordered are associated to the second server300 of Restaurant A (step S510). The second server 300 receiving theorder request replies to the matching app with an acknowledgment (ACK)indicating that the order has been received, and with the current orderstatus (for example, information related to the order history screenG108) as necessary. With this arrangement, the matching app receives thecurrent order status (step S511).

The matching app also sends the food order information with respect tothe second server 300 of Restaurant A to the first server 200 inassociation with the user ID (step S512), and requests an addition orupdate to the user's meal history information. The first server 200receiving the food order information updates the user's meal historyinformation according to the received food order information (stepS513). In this case, a time stamp indicating the order time of the foodindicated by the food order information is also added to the mealhistory information.

The second server 300 of Restaurant A receiving the order requestdisplays the order request on a display inside the store (step S514).With this arrangement, an employee in the store is able to serve theordered food to the seat of the ordering user without making a mistake.

In this way, detailed and accurate meal history information isaccumulated chronologically in the first server 200 as a portion of thepersonal information about the user. With this arrangement, such bigdata is utilized the next time the user places an order, and foodchoices that are highly compatible with the user are presented to theuser more precisely.

According to the control method illustrated in FIG. 26 , it is possibleto lower the risk of a user who has ordered a food being mistakenlyserved a food which is different from the order and which contains aningredient that should be avoided by the user for religious reasons.Furthermore, according to the control method illustrated in FIG. 26 ,even if a user has strict requirements regarding ingredients that shouldbe avoided, the preparation method, and the like, the user is able toorder a food without having to confirm such requirements with therestaurant, and furthermore, the restaurant is also able to accommodatean orders of a food from such a user easily. Also, according to thecontrol method illustrated in FIG. 26 , user unease about communicatingpersonal information concerning the user's privacy such as religioninformation to the restaurant staff and user unease about personalinformation concerning the user's privacy being accumulated in a storeterminal are reduced.

Furthermore, according to the control method illustrated in FIG. 26 ,accurate and chronologically continuous personal information includingreligion information, meal history information (for example, orderhistory information), activity level, vital sign information, and thelike can be managed efficiently and securely. Moreover, according to thecontrol method illustrated in FIG. 26 , personal information isprevented from being leaked to an entity other than a business that hasobtained the user's consent.

(Flowchart of Process of Ordering)

Next, a process by the information terminal 100 according to the presentembodiment will be described. FIG. 27 is a flowchart illustrating anexample of a process by the information terminal 100 in a case where afood is ordered from the standard menu. The flowchart is initiated whentriggered by the launching of the QR code reader by the user on theinformation terminal 100.

In step S11, the QR code reader reads a QR code and passes the readcharacter string (for example, an URL) to the browser. In this process,the QR code is read using the operation screen G1 illustrated in FIG. 7, and the result of reading the QR code is displayed on the operationscreen G2 illustrated in FIG. 8 .

In step S12, the browser accesses the second server 300 of Restaurant Aaccording to the URL, acquires menu information, and displays thestandard menu on the display 105 of the information terminal 100. Inthis process, the operation screen G3 including the standard menuillustrated in FIG. 9 is displayed.

In step S13, the browser accepts, from the user, an instruction ofselecting a food to be ordered from the standard menu. In this process,the standard menu included on the operation screen G3 illustrated inFIG. 10 is operated by the user to select the food to be ordered.

In step S14, the browser transmits an order request in which the user'sseat ID and food order information indicating the food ordered by theuser are associated to the second server 300 of Restaurant A. With theabove, the process of ordering from the standard menu is completed.

In this way, a user who wants to order from an appropriate menu withconsideration for the user's own religion information at a restaurantuses the matching app to display a personalized menu from which to ordera food. On the other hand, a user who wants to select a food from thestandard menu of the restaurant without consideration for the user's ownreligion information uses a general-purpose QR code reader to displaythe standard menu from which to order a food.

In either case, because the seat ID read from the QR code correspondingto the seat where the user is sitting is transmitted in association withthe food order information to the second server 300, the ordered food isserved mistake-free.

FIG. 28 is a flowchart illustrating an example of a process by theinformation terminal 100 in a case where a food is ordered from thepersonalized menu. The flowchart is initiated when triggered by thelaunching of the matching app by the user who enters a restaurant toorder a food.

In step S1, the matching app executes a process of acquiring the QR codecorresponding to the user's seat. Details of this process will bedescribed later using FIG. 29 . In this process, the QR code is readthrough the operation screen G104 illustrated in FIG. 15 , and the seatID and the restaurant ID are acquired. This process corresponds to stepsS501 and S502 of FIG. 26 .

In step S2, the matching app executes a process of using a browserfunction to access the URL indicated by the acquired QR code andacquiring the menu information of Restaurant A from the second server300 of Restaurant A. Details of this process will be described laterusing FIG. 30 . In this process, the data attribute of the menuinformation is also detected to be the food attribute. In this process,the display screen G105 illustrated in FIG. 17 is displayed on theinformation terminal 100. This process corresponds to steps S503 andS504 of FIG. 26 .

In step S3, the matching app executes a process of acquiring personalinformation related to the food attribute, namely religion information,from among the personal information of the user from the first server200. Details of this process will be described later using FIG. 31 .According to this process, the religion information of the user sittingin the seat indicated by the seat ID acquired in step S1 is acquired.This process corresponds to steps S505, S506, and S507 of FIG. 26 .

In step S4, the matching app executes a process of cross-referencing themenu information of Restaurant A with the religion information of theuser and generating a personalized menu including foods compatible withthe religion. Through this process, the operation screen G106 includingthe personalized menu is displayed. This process corresponds to stepS508 of FIG. 26 .

In step S5, the matching app accepts an instruction of selecting a foodto be ordered by the user viewing the personalized menu. In this case,the food is selected as illustrated by the operation screen G106 in FIG.19 . This process corresponds to step S509 of FIG. 26 .

In step S6, the matching app transmits an order request in which foodorder information indicating the food selected in step S5 is associatedwith the seat ID acquired in step S1 to the second server 300 ofRestaurant A. This process corresponds to step S510 of FIG. 26 .

Hereinafter, details of the case where a food is ordered from thepersonalized menu will be described. FIG. 29 is a flowchart illustratingdetails of the process in step S1 of FIG. 28 . In step S101, thematching app launched by the user requests the user to perform userauthentication. In this case, user authentication using theauthentication screen G101 illustrated in FIG. 12 or the authenticationscreen G102 illustrated in FIG. 13 is performed.

In step S102, the matching app determines whether or not the userauthentication is successful. At this point, if user authentication isunsuccessful (step S102, NO), the process returns to step S101. If userauthentication is successful (step S102, YES), the process proceeds tostep S103. In step S103, the matching app displays the home screen G103of the matching app illustrated in FIG. 14 .

In step S104, the matching app accepts a user operation of touching theScan button 1402 on the home screen G103, and launches a QR code readingfunction. With this arrangement, the operation screen G104 illustratedin FIG. 15 is displayed. Note that in the case of adopting aconfiguration that reads the restaurant ID and the seat ID through NFC,the operation screen G1011 illustrated in FIG. 16 is displayed.

In step S105, the direction and position of the information terminal 100are adjusted by the user, and the matching app reads the QR codecorresponding to the seat where the user is sitting.

FIG. 30 is a flowchart illustrating details of the process in step S2 ofFIG. 28 . In step S201, the matching app accesses the second server 300of Restaurant A on the basis of the character string (for example, aURL) expressed by the QR code. This access is performed through an HTTPrequest, for example.

In step S202, the second server 300 of Restaurant A uses an HTTP serverfunction to reply to the matching app with the most recent menuinformation. The reply is performed through an HTTP response, forexample.

In step S203, the matching app acquires the most recent menu informationof Restaurant A.

In step S204, the matching app detects from the acquired menuinformation that the data attribute of the menu information is the foodattribute. This detection is performed on the basis of a data attributewritten in an HTML file containing the menu information, for example.

FIG. 31 is a flowchart illustrating details of the process in step S3 ofFIG. 28 . In step S301, because the data attribute of the acquired menuinformation is the food attribute, the matching app determines thereligion information of the user as the data for performing matching.

In step S302, the matching app requests the first server 200 for theacquisition of the most recent religion information of the user treatedas the target of matching. In this case, the matching app specifies theuser ID and requests a reply containing the religion information in apredetermined encrypted state.

In step S303, the first server 200 extracts the most recent religioninformation on the basis of the user ID from among an enormous amount ofpersonal information being distributively encrypted and managed, andafter converting the religion information to a predetermined format,applies a predetermined encryption and replies to the matching app.

In step S304, the matching app decrypts the acquired most recentreligion information. With this arrangement, the most recent religioninformation of the user is acquired.

FIG. 32 is a flowchart illustrating details of the process in step S4 ofFIG. 28 . In step S401, the matching app cross-references the menuinformation of Restaurant A with the most recent religion information ofthe user, and generates a personalized menu including only foodscompatible with the user's religion. As described later, the menuinformation includes one or more ingredients included in each food, andthe quantity of each ingredient. The menu information may also includepreparation method information indicating the preparation method of eachfood. At this point, the personalized menu is generated using one of themethods indicated by the five variations described above.

In step S402, the matching app uses the browser function to generate anddisplay the operation screen G106 including the generated personalizedmenu on the display 105 of the information terminal 100. In this case,the personalized menu is displayed with style information included inthe menu information of Restaurant A applied thereto, for example.

(Example Implementation of Information Processing when Ordering fromPersonalized Menu)

Next, an example implementation of the information processing in thecase of ordering from the personalized menu will be described. In thecase where the interface for information communication and datastructure to be handled are unique to the restaurant location (that is,store), situations may occur in which the various data handled by theinformation processing system is usable at the store 40 of Restaurant Abut unusable by Restaurant B, or unusable by both a different store ofRestaurant A and Restaurant B. To avoid such situations, ageneral-purpose solution enabling many users to order foods usingpersonalized menus from many restaurants is described hereinafter.

FIG. 33 is a diagram illustrating an example of a specificimplementation of the information processing system according to thepresent embodiment. The memory 102 of the information terminal 100contains a “matching_app” directory, which is a storage location forfiles necessary to execute the matching app. Under the “matching_app”directory, there are an “account” directory, a “main” directory, and a“matching_temp” directory. In the “account” directory, a user accountand/or information necessary for user authentication are stored. In the“main” directory, information necessary for the matching app to achievebasic functions such as drawing the home screen and scanning a QR codeis stored. In the “matching_temp” directory, information necessary formatching is stored temporarily.

In the “account” directory, a “user_account.xml” file describing anaccount and/or information necessary for user authentication is stored.In the “user_account.xml” file, a unique account name (for example, auser ID specified by the user) and corresponding authenticationinformation (for example, a password, fingerprint features, and/or facefeatures) are recorded in an encrypted form as information forspecifying the user, for example.

The account name is not limited to a user ID specified by the user, andany information that can be used to individually identify a user whouses the matching app may be adopted. For example, a unique serial codeassigned to each instance of the matching app, embedded into the programof the matching app, and distributed together with the matching app mayalso be adopted. The unique serial code assigned to each instance refersto a serial code uniquely assigned for each information terminal 100 inwhich the matching app is installed. Alternatively, a unique accountname generated by the matching app on the basis of a random number whenthe matching app is launched for the first time or when registration isperformed for the first time may also be adopted as the account name. Inthis case, it is sufficient for the matching app to generate the accountname automatically by checking with the first server 200 to confirm thatthe account name does not overlap with an existing account name alreadyregistered, for example.

Setting character string information that is unintelligible to humans asthe account name in this way makes it possible to communicate personalinformation with increased anonymity. The religion information includedin the personal information illustrated in FIG. 33 is managed by beingfragmented into a plurality of files as described later. The accountname described above may also be adopted for the userID portion of thefile name in each fragmented file. Alternatively, different informationpaired 1:1 with the account name described above may be adopted for aportion of the file name (for example, the userID portion) of eachfragmented file.

In the “main” directory, a “main.html” file describing contentinformation necessary for achieving the basic functions of the matchingapp and a “main.css” file describing the style (for example, UI design)of the screen display are stored.

In the second server 300 of Restaurant A, a group of files to reply withwhen the URL (for example, http://restaurantA.com/QRorder-18) expressedby a character string obtained as a result of reading a QR code isstored in advance. The group of files includes a “ResA.html” filedescribing the content information included in the reply and a“ResA.css” file describing the style (for example, UI design) of thescreen display of the content information. For example, the ingredientinformation 2400 illustrated in FIGS. 24 and 25 may be included in“ResA.html”, or stored in an external file referenced in the “ResA.html”file.

In the first server 200, a huge variety of personal information aboutthe user is accumulated in a distributively encrypted form. For example,the religion information of the user used in the present disclosure isarchived in physically different storage devices in the first server 200as N files in JSON format named “userID_healthcare_religion_1.json”,“userID_healthcare_religion_2.json”, . . . ,“userID_healthcare_religion_N.json”. In the N files, the “userID” at thebeginning of the file name is identification information for specifyingthe target user, the following “healthcare” is identificationinformation for specifying the information category (for example, food)described using FIG. 23 , the following “religion” is identificationinformation for specifying the data class (for example, religioninformation) described using FIG. 23 , and the final numeral is anidentification number of the divided file.

If a request for the religion information of the user is receivedtogether with appropriate permissions (for example, access rightinformation), the first server 200 correctly decrypts data from the Nfiles and converts the data into a predetermined description format(.json) to acquire a “religion.json” file, and replies to the matchingapp with a “religion.json.enc” file obtained by encrypting the“religion.json” file.

Hereinafter, the handling of files in the case where the matching appperforms screen control using HTML will be described according to theflowchart in FIG. 34 . FIG. 34 is a flowchart illustrating an example ofa process by the matching app with respect to files from the launchingof the matching app until the personalized menu is displayed.

In step S601, the matching app launches and draws the home screen. Thematching app draws the home screen using the “main.html” file and the“main.css” file in the “main” directory immediately after launching.With this arrangement, the home screen G103 illustrated in FIG. 14 isdrawn.

In step S602, the matching app receives menu information from the secondserver 300 of Restaurant A. The received menu information is recorded asthe “ResA.html” file and the “ResA.css” file in the “matching_temp”directory.

In step S603, the matching app receives the encrypted religioninformation (religion.json.enc) of the user from the first server 200.The received religion information is decrypted by the matching app andrecorded as the “religion.json” file in the “matching_temp” directory.

In step S604, the matching app generates a personalized menu compatiblewith the religion information of the user by editing the ResA.html file.The generated personalized menu is recorded as a new “Custom_ResA.html”file in the “matching_temp” directory. Through the above, as illustratedin FIG. 33 , the “religion.json” file, the “ResA.html” file, the“Custom_ResA.html” file, and the “ResA.css” file are recorded in the“matching_temp” directory.

In step S605, the matching app uses the “Custom_ResA.html” file and the“ResA.css” file to draw the generated personalized menu in the styledesignated by Restaurant A.

In this way, various screens are drawn using HTML/CSS files. For thisreason, in the case of presenting a product or service compatible withenormous and diverse personal information about users from amongproducts or services provided by an unspecified large number ofbusinesses from a single matching app, the businesses are able todisplay expected information in an expected style (for example, UIdesign).

When the display screen is returned to the home screen of the matchingapp by the user who has finished ordering a food from the personalizedmenu, or when a predetermined time has elapsed since the user finishedordering a food from the personalized menu, all of the files temporarilystored in the “matching_temp” directory may be deleted for security.

(Variations of Personalized Menu)

The following variations may be adopted instead of the personalized menuillustrated in FIG. 18 . FIG. 35 is a diagram illustrating an example ofthe operation screen G106 including a first variation of thepersonalized menu. On the personalized menu, for the tile objects 901indicating each of the foods, the display order, the size, the framethickness, the frame decoration, the size of an image illustrating thefood, a mark 3501 deforming the food around the image illustrating thefood, the size of the character string of the food name, a deformationapplied to the character string of the food name, and a heart mark 3502indicating a favorite are set.

The settings for the personalized menu are set according to a prioritydescribed later. In the example of FIG. 35 , the food of a lettucesandwich and corn soup has the highest priority, and a veggie burger hasthe next-highest priority. Consequently, the tile object 901C of thelettuce sandwich is arranged on top, and the tile object 901C of theveggie burger is displayed second from the top. Vegetable curry andoolong tea has the third-highest priority while pasta in tomato saucehas the fourth-highest priority, and consequently the tile objects 901Dof these foods are displayed below the tile objects 901C. Note that thetile object 901 for the food having the fifth-highest priority and thefoods thereafter are displayable on the display 105 by performing ascrolling operation.

In the tile objects 901C of the two highest-priority foods, the size isincreased (for example, doubled) compared to the default size of thetile objects 901D, a decoration that thickens the frame is applied, adecoration that emboldens the character string indicating the food nameis applied, the deforming mark 3501 is displayed, the size of the imageillustrating the food is increased (for example, doubled) compared tothe tile objects 901D, and the heart mark 3502 is displayed.Furthermore, in the tile objects 901C, a message such as “soybeans helpensure you get enough iron” informing the user of the merits of eatingthe food and a message such as “contains no animal-based ingredients”addressing the user's concerns about eating the food are displayed. Apredetermined wording for each food may be adopted in these messages.

Here, only the two highest-priority foods are displayed in the form ofthe tile objects 901C, but the number of foods displayed in the form ofthe tile objects 901C is not limited to the two highest-priority foods,and may also be extended to the three or four highest-priority foods,for example.

In the example of FIG. 35 , the tile objects 901C are set to nearly thesame width as the operation screen G106. On the other hand, the tileobjects 901D are set to approximately half the width of the tile objects901C. Consequently, the tile objects 901D of the third-highest andfourth-highest priority are displayed on the same row. The tile objectsof the fifth-highest priority and thereafter are arranged two at a timein the priority order such that two tile objects 901D are positioned onthe same row, similarly to the third-highest and fourth-highest tileobjects. At this time, the tile objects 901D are arranged on the samerow such that the tile object 901D having the higher priority ispositioned on the left for example and the tile object 901D having thelower priority is positioned on the right for example. The heights ofthe two types of tile objects 901C and 901D are set to the same size.

The example of FIG. 35 is a personalized menu for a Buddhist, andtherefore the message “for Buddhists” is displayed with respect to theveggie burger.

To achieve the above, the arithmetic unit 104 calculates a prioritydescribed later for each food included in the menu information.Additionally, the arithmetic unit 104 generates image data of theoperation screen G106 including the personalized menu by arranging thetile objects 901 of the foods in order of highest priority according topredetermined layout information for the personalized menu. As thelayout information, information prescribing the placement position ofthe tile object 901 according to priority and the decoration contentdescribed above according to priority for each food may be adopted, forexample.

Image data that fits into the display area of the display 105 startingthe beginning of the generated image data of the personalized menu isdisplayed on the display 105 as an initial screen. Subsequently, if anoperation of scrolling the display is inputted, the arithmetic unit 104may cause the display of the personalized menu to scroll by sliding thedisplay area of the personalized menu downward.

In FIG. 35 , for the tile objects 901C, the display order, the size, theframe thickness, the frame decoration, the size of the imageillustrating the food, the mark 3501 deforming the food around the imageillustrating the food, the size of the character string of the foodname, the deformation applied to the character string of the food name,and the heart mark 3502 indicating a favorite are set, but at least oneof the above settings may be adopted.

FIG. 36 is a diagram illustrating an example of the operation screenG106 including a second variation of the personalized menu. In thisexample, a display method for a food of lower priority is illustrated.The left side of FIG. 36 illustrates the operation screen G106 beforethe user selects a tile object 901, while the right side illustrates theoperation screen G106 after the user has selected a tile object 901. Onthe personalized menu, for a food containing an ingredient that shouldbe avoided by the user, a warning mark 3602 is displayed inside the tileobject 901 for the food. Additionally, if a tile object 901E includingthe warning mark 3602 is touched by the pointing object 1001, a pop-upframe 3601 explaining the warning is displayed in association with thetouched tile object 901E. Here, the tile object 901E for the Ramen A Sethas been selected, and this food contains ground pork, pork char siu,and eggs as ingredients that should be avoided. Consequently, in thepop-up frame 3901, the message “This food contains the followingingredients:” is displayed, and underneath the message, the ingredientsthat should be avoided and the quantity of each ingredient are displayedin association with each other. With this arrangement, the user ispresented with reference information for determining whether or not toorder the food. As a result, the user is able to order a food smoothly.

To achieve the above, the arithmetic unit 104 references the ingredientinformation 2400 and the religion information to determine whether ornot each food contains an ingredient that should be avoided, and for thefoods that contain an ingredient that should be avoided, the arithmeticunit 104 causes the warning mark 3602 to be displayed in thecorresponding tile object 901. Subsequently, if the tile object 901 istouched, the arithmetic unit 104 extracts the ingredient(s) that shouldbe avoided and the quantity of each ingredient from the ingredientinformation 2400 of the corresponding food, and causes the extractedinformation to be displayed inside the pop-up frame 3601.

The arithmetic unit 104 may display the warning mark 3602 only on thepersonalized menu, or also on the standard menu. In the case ofdisplaying the warning mark 3602 on the standard menu, the arithmeticunit 104 may display the warning mark 3602 on the personalized menu witha different appearance than the standard menu. For example, the warningmark 3602 displayed on the personalized menu may be displayed with alarger size, a more conspicuous color, or a more conspicuous patterncompared to the warning mark 3602 displayed on the standard menu.

Note that for a food containing an ingredient with a resistance value of0 that should be avoided absolutely by the user, the arithmetic unit 104may also display the prohibited mark 3603 illustrated in FIG. 37 insteadof the warning mark 3602 on the tile object 901 of the food.Alternatively, for a food containing an ingredient with a resistancevalue of 0, the arithmetic unit 104 may hide the tile object 901 of thefood regardless of religion. Furthermore, the prohibited mark 3603 mayalso be displayed in the tile object 901 for a food that is not preparedaccording to a preparation method prescribed by the doctrine of thereligion.

Alternatively, for a food containing an ingredient with a resistancevalue of 0, the arithmetic unit 104 may display the prohibited mark 3603in the tile object 901 of the food and furthermore prohibit selection bythe pointing object 1001. In this case, the tile object 901 of the foodmay also be grayed out. FIG. 37 is a diagram illustrating an example ofthe operation screen G106 including grayed-out tile objects 901. Here, aprohibited mark 3603A applied to a tile object 901E indicates aprohibited mark 3603 applied to a tile object 901 that is not grayedout. A prohibited mark 3603B applied to a tile object 901F indicates aprohibited mark 3603 applied to a tile object 901 that is grayed out.The prohibited mark 3603A is displayed in a lighter color than theprohibited mark 3603B. This is to make it easy to distinguish betweenthe image illustrating the food displayed in the tile object 901E andthe prohibited mark 3603A. In FIG. 37 , the prohibited mark 3603A andthe prohibited mark 3603B are both displayed at the same time, but aconfiguration that displays only one may also be adopted.

A tile object 901F is grayed out by displaying the image illustratingthe food semi-transparently. Here, the character string of the food nameis not displayed semi-transparently, but the character string may alsobe displayed semi-transparently.

The arithmetic unit 104 may display the warning mark 3602 in the tileobject 901 only for foods containing an ingredient with predeterminedresistance values (for example, 1 to 3), and does not have to displaythe warning mark 3602 for foods containing an ingredient with aresistance value (for example, 4 or 5) other than the predeterminedresistance values. Furthermore, in the case where the pointing object1001 touches a tile object 901 in which the warning mark 3602 or theprohibited mark 3603 is displayed, the arithmetic unit 104 may drive avibrator provided in the information terminal 100 to cause theinformation terminal 100 to vibrate. This arrangement makes it possibleto inform the user that the food contains an ingredient that should beavoided in an easily understandable way.

The food to which the warning mark 3602 is applied is an example of afood containing an ingredient that the user should avoid as much aspossible.

FIG. 38 is a diagram illustrating an example of the operation screenG106 including a third variation of the personalized menu. When the usertouches the tile object 901 of a certain food with the pointing object1001, the personalized menu suggests ordering a food containing anutrient that the user tends to be deficient in. The left side of FIG.38 illustrates the operation screen G106 before the user selects a tileobject 901, while the right side illustrates the operation screen G106after the user has selected a tile object 901.

For example, suppose that iron is a nutrient that tends to be deficientin persons who embrace a specific religion. Natto is rich in iron.Accordingly, in this example, when a tile object 901G for “mushroompasta” is touched by the pointing object 1001, the arithmetic unit 104displays a pop-up frame 3801 encouraging an additional order of natto inassociation with the tile object 901G. In the pop-up frame 3801, themessage “Add some natto to boost your iron intake?” is displayed, andfurthermore, the additional quantity (+1.5 mg) of iron that can beabsorbed by adding natto is displayed. This arrangement appeals to theuser to supplement iron efficiently by additionally ordering natto.

Moreover, a No button 3804 and a Yes button 3805 are included in thepop-up frame 3801. When the Yes button 3805 is touched by the pointingobject 1001, the arithmetic unit 104 determines that an additional orderfor natto has been placed, and changes the order content from anindividual order of “mushroom pasta” to the combination of “mushroompasta” and “natto”. An information mark 3802 is displayed in the tileobject 901 of foods which such a pop-up frame 3801 is displayable.

On the other hand, if the No button 3804 is touched by the pointingobject 1001, the arithmetic unit 104 does not change the order content.

For example, the arithmetic unit 104 references the ingredientinformation 2400 of a food to determine whether or not the quantity of apredetermined nutrient (for example, iron) that tends to be deficient ina user who embraces a specific religion falls below a threshold, andapplies the information mark 3802 to the food determined to fall belowthe threshold. In this way, in the case where a food with theinformation mark 3802 applied is selected, a suggestion for improvingnutrient balance and helping to maintain health is provided through thepersonalized menu.

(Calculation of Priority)

Next, the calculation of priority will be described. In the presentembodiment, the arithmetic unit 104 of the information terminal 100calculates the priority of each food included in the menu information,and generates a personalized menu in which each food is displayed withan appearance corresponding to the priority. Note that foods with ahigher priority value are prioritized for display. Hereinafter, a methodof calculating the priority will be described. First, the arithmeticunit 104 references the ingredient information 2400 of a certain foodand specifies the ingredients contained in the food as well as thequantity of each ingredient. Next, for each ingredient contained in thefood that corresponds to an ingredient listed in the classificationinformation illustrated in FIG. 23 , the arithmetic unit 104 may performa process of multiplying the quantity of the ingredient by a coefficientcalculated according to (0.2*resistance value−1), and lowering thedisplay priority on the personalized menu for a lower total value of theingredients contained in the food.

For example, for the Ramen B Set (shoyu ramen and three soup dumplings)illustrated in FIG. 24 , the 18 g of pork char siu in the shoyu ramenand the 10 g of ground pork and 10 g of chicken stock in the soupdumplings are calculated as follows with respect to the resistancevalues of “0” for pork and “0” for chicken in the ingredient list of theclassification information illustrated in FIG. 23 .

According to 18*(0.2*0−1)+3*(10*(0.2*0−1)+10*(0.2*0−1))=−78, thepriority of the food is calculated as −78. In this way, the arithmeticunit 104 calculates the priority of each food included in the menuinformation.

(Map Screen)

The present disclosure may also adopt a configuration that causes apersonalized menu to be displayed after first causing one or morerestaurants compatible with the user's religion to be displayed on a mapscreen displayed on the information terminal 100.

FIG. 39 is a diagram illustrating an example of a map screen G3900displayed on the information terminal 100. The map screen G3900 isdisplayed in the case where an operation of selecting the Map button1403 on the home screen G103 is inputted. The map screen G3900 includesa map of a geographical region including the current location of theinformation terminal 100. Additionally, store information about storessupporting the matching app within the geographical region andcompatible with the user's religion are displayed on the map screenG3900. Here, in addition to an icon 3200 indicating the current locationof the user, a store A1 of Restaurant A, a store A2 of Restaurant A, astore B1 of Restaurant B, and a store B2 of Restaurant B are displayed.A store compatible with a religion refers to a store that is capable ofproviding foods which contain ingredients allowed to be eaten and whichare prepared according to a preparation method prescribed by thedoctrine of the religion embraced by the user.

The user selects a desired store to visit while looking at the mapscreen G3900. In this example, the store B1 of Restaurant B closest tothe current location and indicated by an icon 3210 is selected. The useris able to select the store B1 of Restaurant B by touching the icon 3210with the pointing object 1001, for example. The user selecting the storeB1 enters the store B1, and by causing the information terminal 100 toread the restaurant ID and the seat ID described above, the user is ableto cause a personalized menu corresponding to the user's religion to bedisplayed on the information terminal 100.

FIG. 40 is a sequence diagram illustrating an example of an overallpicture of a process by the information processing system in a case ofadopting a configuration in which the user is made to select arestaurant from the map screen G3900. In FIG. 40 , processes which arethe same as FIG. 26 are denoted with the same step numbers, and only thedifferences will be described.

In S4001 following S501, the matching app that has successfullyauthenticated the user displays the home screen G103, and the Map button1403 is touched by the user.

In step S4002, the matching app in which the Map button 1403 has beentouched acquires position information indicating the current location ofthe information terminal 100 detected by the GPS sensor 108, andtransmits a request to acquire nearby map information, that is, mapinformation about the surrounding region including the current location,to the public information server 500.

The public information server 500 receiving the acquisition requestacquires the current location of the information terminal 100 from theposition information included in the acquisition request, extracts mapinformation about a region of predetermined range based on the locationfrom a map database as nearby map information, and transmits theextracted nearby map information to the matching app. The matching appreceiving the nearby map information displays the map screen G3900including a map expressed by the nearby map information (step S4003).The predetermined range expressing the region is a range in which theuser who is about to eat out can reach a store on foot or by car, suchas a range with a radius of 1 km or 2 km from the current location, forexample.

The matching app displaying the map screen G3900 transmits a request toacquire store information about stores compatible with the user'sreligion from among the stores included in the map expressed by thereceived nearby map information to the first server 200 (step S4004).

The first server 200 receiving the acquisition request extracts storeinformation about stores included in the map and compatible with theuser's religion from the memory 203, and transmits the extracted storeinformation to the matching app. A store database including storeinformation about each store is stored in the memory 203, for example.The store information includes the store ID, the store name, positioninformation, and connection information about each store, as well asreligion compatibility information. The religion compatibilityinformation is information indicating which of the religions illustratedin FIG. 22 for example can be accommodated by the restaurant. Forexample, the religion compatibility information is informationindicating compatibility with Islam and incompatibility with otherreligions.

The first server 200 extracts stores included in the region of the mapexpressed by the store information acquisition request from the positioninformation of each store stored in the store database. Thereafter, thefirst server 200 cross-references the religion information of the userwith the religion compatibility information of each store stored in thestore database, extracts stores that are compatible with the user'sreligion from among the stores included in the region of the specifiedmap, and transmits the store information of the extracted stores to theinformation terminal 100.

The matching app receiving the extracted store information displays thestore information on the map of the map screen G3900 (step S4005). Withthis arrangement, as illustrated on the map screen G3900 illustrated inFIG. 39 , stores which are included in the surrounding region of theuser's current location and which are compatible with the user'sreligion are displayed on the map indicating the surrounding region.

In step S4006, the matching app accepts, from the user, an instructionof selecting a store from among the stores displayed on the map screenG3900. Thereafter, the matching app may use a navigation function toguide the user to the store selected by the user. When the user arrivesat the store, the process from step S502 is executed, and a food isordered.

Note that the map screen G3900 is an example of a 1st first operationscreen. Also, in the configuration in which the map screen G3900 isdisplayed, the operation screen G104 and the operation screen G1011 areexamples of a 2nd first operation screen. In this configuration, becausestores near the user and compatible with the user's religion aredisplayed on the map screen G3900, the user is able to check nearbystores which are compatible with the user's religion smoothly.

Note that it is desirable to be able to check what kinds of foods areoffered as foods compatible with the user's religion by the storeselected by the store selection instruction (step S4006) withoutactually having to go to the store. In this case, after the storeselection instruction (step S4006), the matching app may also provide abutton for checking the personalized menu from the selected store. Inthe above description, the URL“http://restaurantA.com/Store-A/QRorder-18” is acquired by reading theQR code of the seat with the seat number 18, but in this case, a specialseat number “00” may be used to access“http://restaurantA.com/Store-A/QRorder-00”. In this case, the server ofRestaurant A understands that the request is a preliminary request tocheck the personalized menu from outside the store, and may reply to thematching app with menu information to enable the creation of apersonalized menu in which ordering is unavailable and only viewing ispossible.

The above description is merely an example, and the present disclosuremay be applied in various applications by persons skilled in the art.

In the foregoing embodiment, the user's seat is presumed to be a chair,but the present disclosure is not limited thereto, and the user's seatmay correspond to one section of a table where the user eats at astand-up restaurant, for example.

In the foregoing embodiment, each structural element may be configuredby dedicated hardware, or realized by executing a software programsuited to each structural element. Each structural element may berealized as a result of a program execution unit such as a CPU or aprocessor reading out and executing a software program recorded on arecording medium such as a hard disk or semiconductor memory.

The scope of the present disclosure is not limited to the embodimentdescribed above. Embodiments obtained by applying various modificationsthat may occur to persons skilled in the art or embodiments formed bycombining the structural elements in different embodiments may also beincluded in the scope of the present disclosure insofar as suchembodiments do not depart from the gist of the present disclosure.

According to an example of a control method according to the presentdisclosure, a personalized menu is generated with consideration foringredients that should be avoided by the user for religious reasons,and therefore the present disclosure is useful in a food ordering systemapplied to a restaurant.

What is claimed is:
 1. A method of controlling an information terminalof a user that communicates over a network with a first server thatmanages religion information of the user corresponding to identificationinformation that identifies the user, the method comprising: acquiring arestaurant ID corresponding to a restaurant and a seat ID indicating aseat of the user through a first operation screen displayed on a displayof the information terminal of the user, wherein the first operationscreen conforms to a common style designed by a matching app of thefirst server; acquiring, on a basis of the restaurant ID, menuinformation indicating one or more foods provided by the restaurant overa network from a second server associated with the restaurantcorresponding to the restaurant ID; transmitting the identificationinformation stored in the information terminal to the first server;acquiring, from the first server on a basis of the identificationinformation, the religion information; extracting one or more firstfoods corresponding to the religion information at the informationterminal, on a basis of the menu information and the religioninformation, the religion information including information related toan ingredient that should be avoided according to a religion of theuser, the menu information including ingredient information for eachfood; displaying the one or more first foods through a second operationscreen for accepting an order of a food to be provided by therestaurant, wherein the second operation screen is customized accordingto a style designated by the restaurant; and transmitting from theinformation terminal to the second server i) food order informationindicating the food selected from among the one or more first foodsusing the second operation screen and ii) the seat ID.
 2. The methodaccording to claim 1, wherein a second food that is not compatible withthe religion information is excluded from the one or more first foods.3. The method according to claim 1, wherein the one or more first foodsinclude a food with an added ingredient containing a nutrient that tendsto be deficient in correspondence with the religion indicated by thereligion information.
 4. The method according to claim 1, wherein thesecond operation screen includes a display indicating a side dish forsupplying a nutrient that tends to be deficient in correspondence withthe religion indicated by the religion information.
 5. The methodaccording to claim 1, wherein the one or more first foods include a foodwith an added ingredient containing a nutrient in which the user hasbeen deficient in past meals consumed by the user over a predeterminedperiod.
 6. The method according to claim 1, wherein the second operationscreen includes a display indicating a side dish for supplying anutrient in which the user has been deficient in past meals consumed bythe user over a predetermined period.
 7. The method according to claim1, wherein the religion information of the user includes the religion ofthe user and level information indicating a degree to which to avoid aningredient that should be avoided according to the religion.
 8. Themethod according to claim 1, wherein the second operation screenincludes a food containing an ingredient that the user should avoid asmuch as possible.
 9. The method according to claim 1, wherein theidentification information includes a user ID.
 10. The method accordingto claim 1, wherein the first server is distinct from the second server.11. The method according to claim 1, wherein the restaurant ID and theseat ID are acquired through the first operation screen by reading anidentification code prepared at a corresponding position at a tablewhere the user sits.
 12. The method according to claim 11, wherein theidentification code includes a QR code.
 13. The method according toclaim 11, wherein the identification code is read using Near FieldCommunication (NFC).
 14. The method according to claim 1, wherein thefirst server distributively manages the religion information, biometricinformation, preference information including product purchase historyinformation or food order history information about the user, andactivity history information including position information about theuser.
 15. A method of controlling an information terminal of a user thatcommunicates over a network with a first server that manages religioninformation of the user corresponding to identification information thatidentifies the user, the method comprising: transmitting theidentification information stored in the information terminal to thefirst server; acquiring, from the first server on a basis of positioninformation and the identification information of the informationterminal through a 1st first operation screen displayed on a display ofthe information terminal of the user, restaurant information expressingone or more restaurants which exist in an area including a pointindicated by the position information and which are compatible with areligion indicated by religion information corresponding to theidentification information, wherein the 1st first operation screenconforms to a common style designed by a matching app of the firstserver; acquiring a restaurant ID corresponding to one restaurant fromamong the one or more restaurants and a seat ID indicating a seat of theuser through a 2nd first operation screen displayed on the display ofthe information terminal of the user, wherein the 2nd first operationscreen conforms to the common style designed by the matching app of thefirst server; acquiring, on a basis of the restaurant ID, menuinformation indicating one or more foods provided by the one restaurantover a network from a second server associated with the one restaurantcorresponding to the restaurant ID; acquiring, from the first server ona basis of the identification information, the religion information;extracting one or more first foods corresponding to the religioninformation at the information terminal, on a basis of the menuinformation and the religion information, the religion informationincluding information related to an ingredient that should be avoidedaccording to the religion of the user, the menu information includingingredient information for each food; displaying the one or more firstfoods through a second operation screen for accepting an order of a foodto be provided by the restaurant, wherein the second operation screencustomized according to a style designated by the one restaurant; andtransmitting from the information terminal to the second server i) foodorder information indicating the food selected from among the one ormore first foods using the second operation screen and ii) the seat ID.16. The method according to claim 15, wherein the position informationabout the user's information terminal is acquired in the first server byusing a GPS system.
 17. An information terminal that executes the methodaccording to claim
 1. 18. A non-transitory computer-readable recordingmedium storing a program for causing a computer of the informationterminal to execute the method according to claim
 1. 19. Thenon-transitory computer-readable recording medium according to claim 18,wherein the identification information that identifies the user includesa serial code for each information terminal assigned to the program.